A206853 a(1)=1, for n>1, a(n) is the least number > a(n-1) such that the Hamming distance D(a(n-1), a(n)) = 2.
1, 2, 4, 7, 11, 13, 14, 22, 26, 28, 31, 47, 55, 59, 61, 62, 94, 110, 118, 122, 124, 127, 191, 223, 239, 247, 251, 253, 254, 382, 446, 478, 494, 502, 506, 508, 511, 767, 895, 959, 991, 1007, 1015, 1019, 1021, 1022, 1534, 1790, 1918, 1982, 2014, 2030, 2038, 2042
Offset: 1
Links
- Alois P. Heinz, Table of n, a(n) for n = 1..1000
Crossrefs
Programs
-
Maple
read("transforms"); Hamming := proc(a,b) XORnos(a,b) ; wt(%) ; end proc: Dplus := proc(a,b) for c from a to 1000000 do if Hamming(a,c)=b then return c; end if; end do: return -1 ; end proc: A206853 := proc(n) option remember; if n = 1 then 1; else Dplus(procname(n-1),2) ; end if; end proc: # R. J. Mathar, Apr 05 2012
-
Mathematica
myHammingDistance[n_, m_] := Module[{g = Max[m, n], h = Min[m, n]}, b1 = IntegerDigits[g, 2]; b2 = IntegerDigits[h, 2, Length[b1]]; HammingDistance[b1, b2]]; t = {1}; Do[If[myHammingDistance[t[[-1]], n] == 2, AppendTo[t, n]], {n, 2, 2042}]; t (* T. D. Noe, Mar 07 2012 *) t={x=1}; Do[i=x+1; While[Count[IntegerDigits[BitXor[x,i],2],1]!=2,i++]; AppendTo[t,x=i],{n,53}]; t (* Jayanta Basu, May 26 2013 *)
-
PARI
next_A206853(n)={my(b=binary(n)); until(norml2(binary(n)-b)==2, n++>=2^#b & b=concat(0,b)); n} print1(n=1); for(i=1,99,print1(","n=next_A206853(n))) \\ M. F. Hasler, Apr 07 2012
Comments