login

Year-end appeal: Please make a donation to the OEIS Foundation to support ongoing development and maintenance of the OEIS. We are now in our 61st year, we have over 378,000 sequences, and we’ve reached 11,000 citations (which often say “discovered thanks to the OEIS”).

A161225
a(n) = number of distinct integers that can be constructed by removing one or more 0's from the binary representation of n, and concatenating while leaving the remaining digits in their same order.
1
0, 1, 0, 2, 1, 1, 0, 3, 2, 3, 1, 2, 1, 1, 0, 4, 3, 5, 2, 5, 3, 3, 1, 3, 2, 3, 1, 2, 1, 1, 0, 5, 4, 7, 3, 8, 5, 5, 2, 7, 5, 7, 3, 5, 3, 3, 1, 4, 3, 5, 2, 5, 3, 3, 1, 3, 2, 3, 1, 2, 1, 1, 0, 6, 5, 9, 4, 11, 7, 7, 3, 11, 8, 11, 5, 8, 5, 5, 2, 9, 7, 11, 5, 11, 7, 7, 3, 7, 5, 7, 3, 5, 3, 3, 1, 5, 4, 7, 3, 8, 5, 5, 2
OFFSET
1,4
LINKS
EXAMPLE
20 in binary is 10100. By removing one, two, or three 0's from this, we can come up with these distinct integers written in binary: 1100, 1010, 110, 101, 11. There are five of these, so a(20) = 5.
MAPLE
g:= proc(n) n + 2^(ilog2(n)) end proc:
h:= proc(n) n + 2^(1+ilog2(n)) end proc:
f:= proc(n) option remember; local S, k, r;
k:= ilog2(n)-1; r:= floor(n/2^k);
if r = 2 then S:= procname(n-2^k); {n-2^k} union S union map(g, S)
else map(h, procname(n - 2^(k+1)))
fi
end proc:
f(1):= {}: f(2):= {1}:
seq(nops(f(n)), n=1..200); # Robert Israel, Apr 12 2020
PROG
(Magma) ndi:=function(n) a:=Intseq(n, 2); p:=1; c:=1; for j:=1 to #a do if a[j] eq 0 then c+:=1; else p*:=c; c:=1; end if; end for; return p-1; end function; [ ndi(n): n in [1..103] ]; // Klaus Brockhaus, Jun 10 2009
CROSSREFS
Cf. A007088 (numbers written in base 2). - Klaus Brockhaus, Jun 10 2009
Sequence in context: A308451 A308067 A124748 * A174980 A277488 A325794
KEYWORD
base,nonn,look,hear
AUTHOR
Leroy Quet, Jun 06 2009
EXTENSIONS
Extended by Ray Chandler, Jun 09 2009
More terms from Klaus Brockhaus, Jun 10 2009
STATUS
approved