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.

A337014 a(1) = 0 and for n > 1, a(n+1) = (k(n) - a(n))*(-1)^(n+1) where k(n) is the number of terms equal to a(n) among the first n terms.

Original entry on oeis.org

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

Views

Author

Bence Bernáth, Nov 21 2020

Keywords

Comments

The graph of the sequence shows interesting, "Christmas tree"-like shapes.

Examples

			For n = 4, a(4) = 2, which appeared only once before, so a(5)=(1-2)*(-1)^5 = 1.
		

Crossrefs

Programs

  • MATLAB
    length=10000;
    sequence(1)=0;
    for n=2:1:length
         sequence(n)=((nnz(sequence==sequence(end)))-(sequence(n-1)))*(-1)^n;
    end
    
  • Mathematica
    a = {0}; Do[AppendTo[a, (-1)^k*(Count[a, a[[-1]]] - a[[-1]])], {k, 0, 81}]; a (* Amiram Eldar, Nov 21 2020 *)
  • PARI
    { for (n=1, #a=vector(83), print1(a[n]=if (n==1, 0, k=sum(k=1, n-1, a[k]==a[n-1]); (k-a[n-1])*(-1)^n) ", ")) } \\ Rémy Sigrist, Nov 22 2020
    
  • Python
    from itertools import islice
    from collections import Counter
    def agen(): # generator of terms
        an, k, sign = 0, Counter(), -1
        while True:
            yield an
            k[an] += 1
            sign *= -1
            an = (k[an] - an)*sign
    print(list(islice(agen(), 83))) # Michael S. Branicky, Nov 12 2022