A279125 Lexicographically earliest sequence such that, for any distinct i and j, a(i)=a(j) implies (i AND j)=0 (where AND stands for the bitwise AND operator).
0, 0, 1, 0, 2, 3, 4, 0, 3, 2, 5, 1, 6, 7, 8, 0, 7, 6, 9, 5, 10, 11, 12, 4, 13, 14, 15, 16, 17, 18, 19, 0, 11, 10, 16, 9, 14, 13, 20, 12, 21, 22, 23, 24, 25, 26, 27, 1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 0, 18, 17, 24, 15, 22, 21, 35, 9
Offset: 1
Links
- Rémy Sigrist, Table of n, a(n) for n = 1..10000
- Rémy Sigrist, Illustration of the first terms (by way of polyominos)
- N. J. A. Sloane and Brady Haran, Amazing Graphs III, Numberphile video (2019).
Programs
-
Maple
with(Bits): n:= 100: l:= []: g:=[seq(0, i = 0..n-1)]: for i from 1 to n by 1 do a:= 0; while (And(g[a + 1], i)) > 0 do a++; end do: g[a + 1] += i; l:= [op(l), a]; end do: print(l); # Reza K Ghazi, Dec 29 2021
-
Mathematica
n = 100; l = {}; g = ConstantArray[0, n]; For[i = 0, i < n, i++; a = 0; While[BitAnd[g[[a + 1]], i] > 0, a++]; g[[a + 1]] += i; l = Append[l, a]]; l (* Reza K Ghazi, Dec 29 2021 *)
-
PARI
g = vector(72); for (n=1, #g, a = 0; while (bitand(g[a+1],n)>0, a++); g[a+1] += n; print1 (a", "))
-
Python
n = 100 g = n * [0] for i in range(1, n + 1): a = 0 while g[a] & i: a += 1 g[a] += i print(a, end=', ') # Reza K Ghazi, Dec 29 2021
Comments