cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A341406 Run lengths of the bits in A308092, read in binary.

Original entry on oeis.org

2, 1, 8, 1, 3, 2, 3, 3, 3, 4, 3, 5, 3, 6, 3, 7, 2, 1, 10, 1, 11, 1, 9, 1, 2, 1, 9, 2, 2, 1, 8, 1, 5, 1, 8, 1, 3, 1, 2, 1, 8, 1, 3, 1, 3, 1, 8, 1, 3, 1, 1, 1, 2, 1, 8, 1, 3, 1, 1, 2, 2, 1, 8, 1, 3, 2, 5, 1, 8, 1, 3, 2, 3, 1, 2, 1, 8, 1, 3, 2, 3, 2, 2, 1, 8, 1
Offset: 1

Views

Author

Peter Kagey, Mar 31 2021

Keywords

Examples

			In binary, A308092 is 1, 10, 11, 111, 1110, 11100, 111000, 1110000, .... The sequence begins with a(1) = 2 ones followed by a(2) = 1 zeros, a(3) = 8 ones, a(4) = 1 zeros, a(5) = 3 ones, a(6) = 2 zeros, and so on.
This sequence first disagrees with A342937 at n = 51, where a(51) = 1 and
A342937(51) = 2.
		

Crossrefs

Programs

  • Python
    from itertools import groupby
    def aupton(terms):
      A308092, bstr, rl_lst, rl_idx, n = [1, 2], "110", [2], 2, 3
      while len(rl_lst) < terms:
        an = int(bstr[:n], 2) - int(bstr[:n-1], 2)
        A308092, bstr, n = A308092 + [an], bstr + bin(an)[2:], n+1
        new_runs = [len(list(g)) for k, g in groupby(bstr[rl_idx:])]
        if len(new_runs) > 1:
          rl_idx += sum(new_runs[:-1])
          rl_lst.extend(new_runs[:-1]) # don't take last one in case mid-run
      return rl_lst[:terms]
    print(aupton(86)) # Michael S. Branicky, Apr 03 2021