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.

A363083 a(0)=a(1)=1. For n>1, if the number of occurrences of a(n-1) is less than abs(a(n-1)), then a(n)=a(n-1)-a(n-2). Otherwise, a(n)=a(n-1)+a(n-2).

Original entry on oeis.org

1, 1, 2, 1, 3, 2, 5, 3, -2, -5, -3, 2, -1, 1, 0, 1, 1, 2, 3, 5, 2, 7, 5, -2, 3, 1, 4, 3, 7, 4, -3, -7, -4, 3, -1, 2, 1, 3, 4, 1, 5, 4, 9, 5, 14, 9, -5, -14, -9, 5, -4, -9, -5, 4, -1, 3, 2, 5, 7, 2, 9, 7, -2, 5, 3, 8, 5, 13, 8, -5, -13, -8, 5, -3, 2, -1, 1, 0
Offset: 0

Views

Author

Gavin Lupo, May 18 2023

Keywords

Examples

			a(0) = 1
a(1) = 1
a(2) = 2. Two 1's in the list so far.    2 > abs(1).   1 + 1 = 2.
a(3) = 1. One 2 in the list so far.      1 < abs(2).   2 - 1 = 1.
a(4) = 3. Three 1's in the list so far.  3 > abs(1).   1 + 2 = 3.
		

Crossrefs

Programs

  • Python
    from itertools import islice
    from collections import Counter
    def agen(): # generator of terms
        anprev, an, c = 1, 1, Counter([1])
        yield 1
        while True:
            yield an
            c[an] += 1
            anprev, an = an, an-anprev if c[an] < abs(an) else an+anprev
    print(list(islice(agen(), 80))) # Michael S. Branicky, May 18 2023