OFFSET
0,1
LINKS
Michael S. Branicky, Table of n, a(n) for n = 0..228 (terms 0..91 from R. J. Mathar)
Michael S. Branicky, Python program
MAPLE
A051700 := proc(m) option remember ; if m <= 2 then op(m+1, [2, 1, 1]) ; else min(nextprime(m)-m, m-prevprime(m)) ; fi ; end:
A051652 := proc(n) local m ; if n = 0 then RETURN(2); else for m from 0 do if A051700(m) = n then RETURN(m) ; fi ; od: fi ; end:
for n from 0 to 79 do printf("%d %d\n", n, A051652(n)); od: # R. J. Mathar, Jul 22 2009
MATHEMATICA
A051700[n_] := A051700[n] = Min[ NextPrime[n] - n, n - NextPrime[n, -1]]; a[n_] := For[m = 0, True, m++, If[A051700[m] == n, Return[m]]]; a[0] = 2; Table[ a[n], {n, 0, 40}] (* Jean-François Alcover, Dec 19 2011, after R. J. Mathar *)
Join[{2, 1, 0}, Drop[Flatten[Table[Position[Table[Min[NextPrime[n]-n, n-NextPrime[ n, -1]], {n, 200000}], _?(#==i&), {1}, 1], {i, 40}]], 2]] (* Harvey P. Dale, Mar 16 2015 *)
PROG
(Python) # see link for faster program
from sympy import prevprime, nextprime
def A051700(n):
return [2, 1, 1][n] if n < 3 else min(n-prevprime(n), nextprime(n)-n)
def a(n):
if n == 0: return 2
m = 0
while A051700(m) != n: m += 1
return m
print([a(n) for n in range(26)]) # Michael S. Branicky, Feb 27 2021
CROSSREFS
KEYWORD
nonn,nice
AUTHOR
EXTENSIONS
More terms from James A. Sellers, Dec 07 1999
STATUS
approved