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.

A309363 Van Eck's sequence (cf. A181391), but outputting 2 for a new number, not 0.

Original entry on oeis.org

0, 2, 2, 1, 2, 2, 1, 3, 2, 3, 2, 2, 1, 6, 2, 3, 6, 3, 2, 4, 2, 2, 1, 10, 2, 3, 8, 2, 3, 3, 1, 8, 5, 2, 6, 18, 2, 3, 8, 7, 2, 4, 22, 2, 3, 7, 6, 12, 2, 5, 17, 2, 3, 8, 15, 2, 4, 15, 3, 6, 13, 2, 6, 3, 5, 15, 8, 13, 7, 23, 2, 9, 2, 2, 1, 44
Offset: 1

Views

Author

Nicholas FitzGerald, Jul 25 2019

Keywords

Comments

After the initial value, the sequence is extended by a(n+1) = min { k > 0: a(n-k) = a(n) } or 2 if no such k exists, i.e., if a(n) did not appear earlier.
Although the sequence has properties that are superficially similar to the original A181391, there is an important difference. Using a positive number m instead of 0 to mark a new value means there is no 1-to-1 correspondence between the occurrence of a new value and the occurrence of m. - Jan Ritsema van Eck, Aug 14 2019

Crossrefs

Cf. A181391, A171911, ..., A171918 (same but starting with 0, 1, 2, ..., 8 and returning 0 when a new term appears).

Programs

  • Python
    from itertools import count, islice
    def A309363gen(): # generator of terms
        b, bdict = 0, {0:(1,)}
        for n in count(2):
            yield b
            if len(l := bdict[b]) > 1:
                b = n-1-l[-2]
            else:
                b = 2
            if b in bdict:
                bdict[b] = (bdict[b][-1],n)
            else:
                bdict[b] = (n,)
    A309363_list = list(islice(A309363gen(),20)) # Chai Wah Wu, Dec 21 2021