A356149 Irregular table T(n, k), n > 0, k = 1..A356148(n), read by rows; the n-th row contains, in ascending order, the distinct positive integers whose binary expansion appears as a substring in the binary expansion of n or its complement.
1, 1, 2, 1, 3, 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 6, 1, 3, 7, 1, 2, 3, 4, 7, 8, 1, 2, 3, 4, 6, 9, 1, 2, 5, 10, 1, 2, 3, 4, 5, 11, 1, 2, 3, 4, 6, 12, 1, 2, 3, 5, 6, 13, 1, 2, 3, 6, 7, 14, 1, 3, 7, 15, 1, 2, 3, 4, 7, 8, 15, 16, 1, 2, 3, 4, 6, 7, 8, 14, 17, 1, 2, 3, 4, 5, 6, 9, 13, 18
Offset: 1
Examples
Table T(n, k) begins: 1; 1, 2; 1, 3; 1, 2, 3, 4; 1, 2, 5; 1, 2, 3, 6; 1, 3, 7; 1, 2, 3, 4, 7, 8; 1, 2, 3, 4, 6, 9; 1, 2, 5, 10; 1, 2, 3, 4, 5, 11; 1, 2, 3, 4, 6, 12; 1, 2, 3, 5, 6, 13; 1, 2, 3, 6, 7, 14; 1, 3, 7, 15; 1, 2, 3, 4, 7, 8, 15, 16; ...
Links
Programs
-
PARI
row(n) = { my (b=binary(n)); setbinop((i,j) -> my (s=fromdigits(b[i..j],2)); if (b[i], s, 2^(j-i+1)-1-s), [1..#b]) }
-
Python
def row(n): N = n.bit_length() c, s = ((1<
> i) s.add((mask&c) >> i) return sorted(s - {0}) print([t for r in range(19) for t in row(r)]) # Michael S. Branicky, Jul 28 2022
Formula
T(n, 1) = 1.
T(n, A356148(n)) = n.
Comments