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”).

A174205
Write natural numbers in base 2 as a stream of digits. Moving left to right, delete odd occurrences of digit 0 and 1.
6
1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1
OFFSET
1,1
COMMENTS
The natural numbers in base 2 are 0, 1, 10, 11, 100, 101, 110, 111, 1000..... and define a stream of digits if concatenated:
0110111001011101111000 Delete odd-indexed occurrences of 0 (replaced by .):
.110111.01.11101111.0. Also delete odd-indexed occurrences of 1 (replaced by .):
..10.1..01..1.01.1..0.
The stream of bits that remain after these two rounds of deletion is chopped into single bits which define the entries of the current sequence.
PROG
(Sage)
def A174205(N=100):
a = [0] + flatten([n.digits(base=2)[::-1] for n in IntegerRange(1, N)])
for bit in 0, 1:
a = [d for i, d in enumerate(a) if not (d == bit and a[:i+1].count(bit) % 2 == 1)]
return a # D. S. McNeil, Dec 08 2010
CROSSREFS
KEYWORD
easy,nonn,base
AUTHOR
STATUS
approved