login
A050128
a(n) = floor(a(n-1)/2) if this is not among 0, a(1), ..., a(n-1); otherwise a(n) = 2*n.
9
1, 4, 2, 8, 10, 5, 14, 7, 3, 20, 22, 11, 26, 13, 6, 32, 16, 36, 18, 9, 42, 21, 46, 23, 50, 25, 12, 56, 28, 60, 30, 15, 66, 33, 70, 35, 17, 76, 38, 19, 82, 41, 86, 43, 90, 45, 94, 47, 98, 49, 24, 104, 52, 108, 54, 27, 114, 57, 118, 59, 29, 124
OFFSET
1,2
COMMENTS
Does this sequence contain every positive integer exactly once?
LINKS
MAPLE
N:= 100: # for a(1)..a(N)
V:= Vector(N): S:= {0, 1}:
V[1]:= 1:
for n from 2 to N do
v:= floor(V[n-1]/2);
if member(v, S) then V[n]:= 2*n
else V[n]:= v
fi;
S:= S union {V[n]}
od:
convert(V, list); # Robert Israel, Feb 09 2020
MATHEMATICA
f[s_List] := Block[{len = Length@s, m = Floor[s[[-1]]/2]}, Append[s, If[MemberQ[s, m], 2 len, m]]]; Rest@Nest[f, {0, 1}, 65] (* Robert G. Wilson v, Aug 09 2018 *)
CROSSREFS
KEYWORD
nonn,look
STATUS
approved