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.

A001151 Describe the previous term! (method A - initial term is 8).

Original entry on oeis.org

8, 18, 1118, 3118, 132118, 1113122118, 311311222118, 13211321322118, 1113122113121113222118, 31131122211311123113322118, 132113213221133112132123222118, 11131221131211132221232112111312111213322118, 31131122211311123113321112131221123113111231121123222118
Offset: 1

Views

Author

Keywords

Comments

Method A = 'frequency' followed by 'digit'-indication.
a(n+1) - a(n) is divisible by 10^5 for n > 5. - Altug Alkan, Dec 04 2015

Examples

			E.g. the term after 3118 is obtained by saying "one 3, two 1's, one 8", which gives 132118.
		

References

  • S. R. Finch, Mathematical Constants, Cambridge, 2003, pp. 452-455.
  • I. Vardi, Computational Recreations in Mathematica. Addison-Wesley, Redwood City, CA, 1991, p. 4.

Crossrefs

Programs

  • Maple
    freq := proc(i,L)
        local f,p ;
        if i > nops(L) or i < 1 then
            return 0 ;
        end if;
        f := 1 ;
        for p from i to 2 by -1 do
            if op(p,L) = op(p-1,L) then
                f := f+1 ;
            else
                return f;
            end if;
        end do:
        f ;
    end proc:
    read("transforms"):
    rle := proc(n)
        local inL,i,outL,f ;
        inL := convert(n,base,10) ;
        i := nops(inL) ;
        outL := [] ;
        while i>0 do
            f := freq(i,inL) ;
            if f = 0 then
                break;
            else
                outL := [op(outL),f,op(i,inL)] ;
                i := i-f ;
            end if;
        end do:
        digcatL(outL) ;
    end proc:
    A001151 := proc(n)
        option remember ;
        if n = 1 then
            8;
        else
            rle(procname(n-1)) ;
        end if;
    end proc:
    seq(A001151(n),n=1..10) ; # R. J. Mathar, Feb 11 2021
  • Mathematica
    RunLengthEncode[x_List] := (Through[{First, Length}[ #1]] &) /@ Split[x]; LookAndSay[n_, d_: 1] := NestList[Flatten[Reverse /@ RunLengthEncode[ # ]] &, {d}, n - 1]; F[n_] := LookAndSay[n, 8][[n]]; Table[FromDigits[F[n]], {n, 1, 11}] (* Zerinvary Lajos, Jul 08 2009 *)