OFFSET
1,2
COMMENTS
This is the nicest of these variations. Is this a permutation of the natural numbers?
See A078758 for the inverse permutation (in case this is a permutation of the positive integers). - M. F. Hasler, Nov 03 2014
After 10^12 terms, the smallest number which has not appeared is 5191516. - Benjamin Chaffin, Oct 09 2016
REFERENCES
Suggested by J. C. Lagarias.
LINKS
MAPLE
h := array(1..100000); maxt := 100000; a := array(1..1000); a[1] := 1; h[1] := 1; for nx from 2 to 1000 do for i from 0 to 100 do t1 := a[nx-1]-nx-i; if t1>0 and h[t1] <> 1 then a[nx] := t1; if t1 < maxt then h[t1] := 1; fi; break; fi; t1 := a[nx-1]+nx+i; if h[t1] <> 1 then a[nx] := t1; if t1 < maxt then h[t1] := 1; fi; break; fi; od; od; evalm(a);
MATHEMATICA
h[1] = 1; h[_] = 0; maxt = 100000; a[1] = 1; a[_] = 0; For[nx = 2, nx <= 1000, nx++, For[i = 0, i <= 100, i++, t1 = a[nx - 1] - nx - i; If[t1 > 0 && h[t1] != 1, a[nx] = t1; If[t1 < maxt, h[t1] = 1]; Break[]]; t1 = a[nx - 1] + nx + i; If[h[t1] != 1, a[nx] = t1; If[t1 < maxt, h[t1] = 1]; Break[]]]]; Table[a[n], {n, 1, 100}](* Jean-François Alcover, May 09 2012, after Maple *)
PROG
(PARI) A064389(n=1000, show=0)={ my(k, s, t); for(n=1, n, k=n; while( !(t>k && !bittest(s, t-k) && t-=k) && !(!bittest(s, t+k) && t+=k), k++); s=bitor(s, 1<<t); show&&print1(t", ")); t} \\ M. F. Hasler, Nov 03 2014
CROSSREFS
KEYWORD
AUTHOR
N. J. A. Sloane, Sep 28 2001
STATUS
approved