|
|
A125717
|
|
a(0)=0; thereafter a(n) = the smallest nonnegative integer not already in the sequence such that a(n-1) is congruent to a(n) (mod n).
|
|
12
|
|
|
0, 1, 3, 6, 2, 7, 13, 20, 4, 22, 12, 23, 11, 24, 10, 25, 9, 26, 8, 27, 47, 5, 49, 72, 48, 73, 21, 75, 19, 77, 17, 79, 15, 81, 115, 45, 117, 43, 119, 41, 121, 39, 123, 37, 125, 35, 127, 33, 129, 31, 131, 29, 133, 80, 134, 189, 245, 74, 16, 193, 253, 70, 132, 69, 197, 67, 199, 65
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
0,3
|
|
COMMENTS
|
This sequence seems likely to be a permutation of the nonnegative integers.
A very nice (maybe the most natural) variant of Recamán's sequence A005132. - M. F. Hasler, Nov 03 2014
|
|
LINKS
|
|
|
MATHEMATICA
|
f[l_List] := Block[{n = Length[l], k = Mod[l[[ -1]], n]}, While[MemberQ[l, k], k += n]; Append[l, k]]; Nest[f, {0}, 70] (* Ray Chandler, Feb 04 2007, updated for change to offset Oct 10 2019 *)
|
|
PROG
|
(PARI) {Quet_p2(n)=/* Permutation sequence a'la Leroy Quet, A125717 */local(x=[1], k=0, w=1); for(i=2, n, if((k=x[i-1]%i)==0, k=i); while(bittest(w, k-1)>0, k+=i); x=concat(x, k); w+=2^(k-1)); return(x)} [Ferenc Adorjan]
(Haskell)
import Data.IntMap (singleton, member, (!), insert)
a125717 n = a125717_list !! n
a125717_list = 0 : f [1..] 0 (singleton 0 0) where
f (v:vs) w m = g (reverse[w-v, w-2*v..1] ++ [w+v, w+2*v..]) where
g (x:xs) = if x `member` m then g xs else x : f vs x (insert x v m)
(PARI) A125717(n, show=0)={my(u=1, a); for(n=1, n, a%=n; while(bittest(u, a), a+=n); u+=1<<a; show&&print1(a", ")); a} \\ M. F. Hasler, Nov 03 2014
(Python)
from itertools import count, islice
def agen(): # generator of terms
an, aset = 0, {0}
for n in count(1):
yield an
an = next(m for m in count(an%n, n) if m not in aset)
aset.add(an)
|
|
CROSSREFS
|
See also A370957 (first differences).
|
|
KEYWORD
|
|
|
AUTHOR
|
|
|
EXTENSIONS
|
|
|
STATUS
|
approved
|
|
|
|