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.

Showing 1-6 of 6 results.

A005150 Look and Say sequence: describe the previous term! (method A - initial term is 1).

Original entry on oeis.org

1, 11, 21, 1211, 111221, 312211, 13112221, 1113213211, 31131211131221, 13211311123113112211, 11131221133112132113212221, 3113112221232112111312211312113211, 1321132132111213122112311311222113111221131221, 11131221131211131231121113112221121321132132211331222113112211, 311311222113111231131112132112311321322112111312211312111322212311322113212221
Offset: 1

Views

Author

Keywords

Comments

Method A = "frequency" followed by "digit"-indication.
Also known as the "Say What You See" sequence.
Only the digits 1, 2 and 3 appear in any term. - Robert G. Wilson v, Jan 22 2004
All terms end with 1 (the seed) and, except the third a(3), begin with 1 or 3. - Jean-Christophe Hervé, May 07 2013
Proof that 333 never appears in any a(n): suppose it appears for the first time in a(n); because of "three 3" in 333, it would imply that 333 is also in a(n-1), which is a contradiction. - Jean-Christophe Hervé, May 09 2013
This sequence is called "suite de Conway" in French (see Wikipédia link). - Bernard Schott, Jan 10 2021
Contrary to many accounts (including an earlier comment on this page), Conway did not invent the sequence. The first mention of the sequence appears to date back to the 1977 International Mathematical Olympiad in Belgrade, Yugoslavia. See the Editor's note on page 4, directly preceding Conway's article in Eureka referenced below. - Harlan J. Brothers, May 03 2024

Examples

			The term after 1211 is obtained by saying "one 1, one 2, two 1's", which gives 111221.
		

References

  • John H. Conway and Richard K. Guy, The Book of Numbers, New York: Springer-Verlag, 1996. See p. 208.
  • S. R. Finch, Mathematical Constants, Cambridge, 2003, section 6.12 Conway's Constant, pp. 452-455.
  • M. Gilpin, On the generalized Gleichniszahlen-Reihe sequence, Manuscript, Jul 05 1994.
  • A. Lakhtakia and C. Pickover, Observations on the Gleichniszahlen-Reihe: An Unusual Number Theory Sequence, J. Recreational Math., 25 (No. 3, 1993), 192-198.
  • Clifford A. Pickover, Computers and the Imagination, St Martin's Press, NY, 1991.
  • Clifford A. Pickover, Fractal horizons: the future use of fractals, New York: St. Martin's Press, 1996. ISBN 0312125992. Chapter 7 has an extensive description of the elements and their properties.
  • C. A. Pickover, The Math Book, Sterling, NY, 2009; see p. 486.
  • N. J. A. Sloane and Simon Plouffe, The Encyclopedia of Integer Sequences, Academic Press, 1995 (includes this sequence).
  • James J. Tattersall, Elementary Number Theory in Nine Chapters, 1999, p. 23.
  • I. Vardi, Computational Recreations in Mathematica. Addison-Wesley, Redwood City, CA, 1991, p. 4.

Crossrefs

Cf. A001387, Periodic table: A119566.
Cf. A225224, A221646, A225212 (continuous versions).
Apart from the first term, all terms are in A001637.
About digits: A005341 (number of digits), A022466 (number of 1's), A022467 (number of 2's), A022468 (number of 3's), A004977 (sum of digits), A253677 (product of digits).
About primes: A079562 (number of distinct prime factors), A100108 (terms that are primes), A334132 (smallest prime factor).
Cf. A014715 (Conway's constant), A098097 (terms interpreted as written in base 4).

Programs

  • Haskell
    import List
    say :: Integer -> Integer
    say = read . concatMap saygroup . group . show
    where saygroup s = (show $ length s) ++ [head s]
    look_and_say :: [Integer]
    look_and_say = 1 : map say look_and_say
    -- Josh Triplett (josh(AT)freedesktop.org), Jan 03 2007
    
  • Haskell
    a005150 = foldl1 (\v d -> 10 * v + d) . map toInteger . a034002_row
    -- Reinhard Zumkeller, Aug 09 2012
    
  • Java
    See Paulo Ortolan link.
    
  • 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, 1 ][ [ n ] ]; Table[ FromDigits[ F[ n ] ], {n, 1, 15} ]
    A005150[1] := 1; A005150[n_] := A005150[n] = FromDigits[Flatten[{Length[#], First[#]}&/@Split[IntegerDigits[A005150[n-1]]]]]; Map[A005150, Range[25]] (* Peter J. C. Moses, Mar 21 2013 *)
  • PARI
    A005150(n,a=1)={ while(n--, my(c=1); for(j=2,#a=Vec(Str(a)), if( a[j-1]==a[j], a[j-1]=""; c++, a[j-1]=Str(c,a[j-1]); c=1)); a[#a]=Str(c,a[#a]); a=concat(a)); a }  \\ M. F. Hasler, Jun 30 2011
  • Perl
    $str="1"; for (1 .. shift(@ARGV)) { print($str, ","); @a = split(//,$str); $str=""; $nd=shift(@a); while (defined($nd)) { $d=$nd; $cnt=0; while (defined($nd) && ($nd eq $d)) { $cnt++; $nd = shift(@a); } $str .= $cnt.$d; } } print($str);
    # Jeff Quilici (jeff(AT)quilici.com), Aug 12 2003
    
  • Perl
    # This outputs the first n elements of the sequence, where n is given on the command line.
    $s = 1;
    for (2..shift @ARGV) {
    print "$s, ";
    $s =~ s/(.)\1*/(length $&).$1/eg;
    }
    # Arne 'Timwi' Heizmann (timwi(AT)gmx.net), Mar 12 2008
    print "$s\n";
    
  • Python
    def A005150(n):
        p = "1"
        seq = [1]
        while (n > 1):
            q = ''
            idx = 0 # Index
            l = len(p) # Length
            while idx < l:
                start = idx
                idx = idx + 1
                while idx < l and p[idx] == p[start]:
                    idx = idx + 1
                q = q + str(idx-start) + p[start]
            n, p = n - 1, q
            seq.append(int(p))
        return seq
    # Olivier Mengue (dolmen(AT)users.sourceforge.net), Jul 01 2005
    
  • Python
    def A005150(n):
        seq = [1] + [None] * (n - 1) # allocate entire array space
        def say(s):
            acc = '' # initialize accumulator
            while len(s) > 0:
                i = 0
                c = s[0] # char of first run
                while (i < len(s) and s[i] == c): # scan first digit run
                    i += 1
                acc += str(i) + c # append description of first run
                if i == len(s):
                    break # done
                else:
                    s = s[i:] # trim leading run of digits
            return acc
        for i in range(1, n):
            seq[i] = int(say(str(seq[i-1])))
        return seq
    # E. Johnson (ejohnso9(AT)earthlink.net), Mar 31 2008
    
  • Python
    # program without string operations
    def sign(n): return int(n > 0)
    def say(a):
        r = 0
        p = 0
        while a > 0:
            c = 3 - sign((a % 100) % 11) - sign((a % 1000) % 111)
            r += (10 * c + (a % 10)) * 10**(2*p)
            a //= 10**c
            p += 1
        return r
    a = 1
    for i in range(1, 26):
        print(i, a)
        a = say(a)
    # Volker Diels-Grabsch, Aug 18 2013
    
  • Python
    import re
    def lookandsay(limit, sequence = 1):
        if limit > 1:
            return lookandsay(limit-1, "".join([str(len(match.group()))+match.group()[0] for matchNum, match in enumerate(re.finditer(r"(\w)\1*", str(sequence)))]))
        else:
            return sequence
    # lookandsay(3) --> 21
    # Nicola Vanoni, Nov 29 2016
    
  • Python
    import itertools
    x = "1"
    for i in range(20):
        print(x)
        x = ''.join(str(len(list(g)))+k for k,g in itertools.groupby(x))
    # Matthew Cotton, Nov 12 2019
    

Formula

a(n+1) = A045918(a(n)). - Reinhard Zumkeller, Aug 09 2012
a(n) = Sum_{k=1..A005341(n)} A034002(n,k)*10^(A005341(n)-k). - Reinhard Zumkeller, Dec 15 2012
a(n) = A004086(A007651(n)). - Bernard Schott, Jan 08 2021
A055642(a(n+1)) = A005341(n+1) = 2*A043562(a(n)). - Ya-Ping Lu, Jan 28 2025
Conjecture: DC(a(n)) ~ k * (Conway's constant)^n where k is approximately 1.021... and DC denotes the number of digit changes in the decimal representation of n (e.g., DC(13112221)=4 because 1->3, 3-1, 1->2, 2->1). - Bill McEachen, May 09 2025
Conjecture: lim_{n->infinity} (c2+c3-c1)/(c1+c2+c3) = 0.01 approximately, where ci is the number of appearances of 'i' in a(n). - Ya-Ping Lu, Jun 05 2025

A005341 Length of n-th term in Look and Say sequences A005150 and A007651.

Original entry on oeis.org

1, 2, 2, 4, 6, 6, 8, 10, 14, 20, 26, 34, 46, 62, 78, 102, 134, 176, 226, 302, 408, 528, 678, 904, 1182, 1540, 2012, 2606, 3410, 4462, 5808, 7586, 9898, 12884, 16774, 21890, 28528, 37158, 48410, 63138, 82350, 107312, 139984, 182376, 237746, 310036, 403966, 526646, 686646
Offset: 1

Views

Author

Keywords

Comments

Row lengths of A034002 and of A220424. - Reinhard Zumkeller, Dec 15 2012
Satisfies a recurrence of order 72. The characteristic polynomial of this recurrence is a degree-72 polynomial that factors as (x-1)*q(x), where q(x) is a degree-71 polynomial. The unique positive real root of q is approximately 1.3036 and is called Conway's constant (A014715), which equals the limiting ratio a(n+1)/a(n). - Nathaniel Johnston, Apr 12 2018 [Corrected by Richard Stanley, Dec 26 2018]

References

  • J. H. Conway, The weird and wonderful chemistry of audioactive decay, in T. M. Cover and Gopinath, eds., Open Problems in Communication and Communications, Springer, NY 1987, pp. 173-188.
  • S. R. Finch, Mathematical Constants, Cambridge, 2003, pp. 452-455.
  • N. J. A. Sloane and Simon Plouffe, The Encyclopedia of Integer Sequences, Academic Press, 1995 (includes this sequence).

Programs

  • Haskell
    a005341 = length . a034002_row  -- Reinhard Zumkeller, Dec 15 2012
  • 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, 1 ][ [ n ] ]; Table[ Length[ F[ n ] ], {n, 1, 51} ]
    p = {12, -18, 18, -18, 18, -20, -22, 31, 15, -4, -4, -19, 62, -50, -21, -11, 41, 54, -56, -44, 15, -27, -15, 45, -8, 89, -64, -66, -25, 38, 126, -39, -32, -33, -65, 107, 14, 16, -13, -79, 7, 42, 12, 8, -26, -9, 35, -23, -20, -30, 34, 58, -1, -20, -36, -6, 13, 8, 6, 3, -1, -4, -1, -4, -5, -1, 8, 6, 0, -6, -4, 1, 0, 1, 1, 1, 1, -1, -1}; q = {-6, 9, -9, 18, -16, 11, -14, 8, -1, 5, -7, -2, -8, 14, 5, 5, -19, -3, 6, 7, 6, -16, 7, -8, 22, -17, 12, -7, -5, -7, 8, -4, 7, 9, -13, 4, 6, -14, 14, -19, 7, 13, -2, 4, -18, 0, 1, 4, 12, -8, 5, 0, -8, -1, -7, 8, 5, 2, -3, -3, 0, 0, 0, 0, 2, 1, 0, -3, -1, 1, 1, 1, -1}; gf = Fold[x #1 + #2 &, 0, p]/Fold[x #1 + #2 &, 0, q]; CoefficientList[Series[gf, {x, 0, 99}], x] (* Peter J. C. Moses, Jun 23 2013 *)
  • PARI
    print1(a=1);for(i=2,100,print1(",",#Str(a=A005150(2,a))))  \\ M. F. Hasler, Nov 08 2011
    

Formula

a(n) = A055642(A005150(n)) = A055642(A007651(n)). - Reinhard Zumkeller, Dec 15 2012

Extensions

More terms from Mike Keith

A088203 Infinite audioactive word that shifts 1 place left under "Look and Say" method A, starting with a(1)=2.

Original entry on oeis.org

2, 1, 2, 1, 1, 1, 2, 3, 1, 1, 2, 1, 3, 2, 1, 1, 2, 1, 1, 1, 3, 1, 2, 2, 1, 1, 2, 3, 1, 1, 3, 1, 1, 2, 2, 2, 1, 1, 2, 1, 3, 2, 1, 1, 3, 2, 1, 3, 2, 2, 1, 1, 2, 1, 1, 1, 3, 1, 2, 2, 1, 1, 3, 1, 2, 1, 1, 1, 3, 2, 2, 2, 1, 1, 2, 3, 1, 1, 3, 1, 1, 2, 2, 2, 1, 1, 3, 1, 1, 1, 2, 3, 1, 1, 3, 3, 2, 2, 1, 1, 2, 1, 3, 2, 1
Offset: 1

Views

Author

Paul D. Hanna, Sep 22 2003

Keywords

Comments

A006751(n) = concatenation of n-th row. - Reinhard Zumkeller, Aug 09 2012
From Jean-Christophe Hervé, May 07 2013: (Start)
The sequence is obtained continuously by applying the look-and-say rule from seed 2: 2 -> 1,2 -> 1,1,1,2 -> etc. The sequence is then determined by pairs of digits. Terms of even ranks are counts while odd ranks are figures. A225224 and A221646 are from seed 1 and A088204 from seed 3.
The present sequence is the concatenation of A006751 (original look-and-say method by blocks) because, with seed 2, all blocks of A006751 begin with 1 or 3 and end with 2 and therefore, there is no possible interaction between blocks after concatenation. (End)

References

  • J. H. Conway, The weird and wonderful chemistry of audioactive decay, in T. M. Cover and Gopinath, eds., Open Problems in Communication and Computation, Springer, NY 1987, pp. 173-188.

Crossrefs

Cf. A225224, A221646 (seed one).

Programs

  • Haskell
    -- see Watkins link, p. 3.
    import Data.List (group)
    a088203 n k = a088203_tabf !! (n-1) !! (k-1)
    a088203_row n = a088203_tabf !! (n-1)
    a088203_tabf = iterate
                   (concat . map (\xs -> [length xs, head xs]) . group) [2]
    -- Reinhard Zumkeller, Aug 09 2012

A220424 Triangle read by rows: A007651 expanded into single digits.

Original entry on oeis.org

1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 2, 2, 1, 3, 1, 2, 2, 2, 1, 1, 3, 1, 1, 1, 2, 3, 1, 2, 3, 1, 1, 1, 1, 2, 2, 1, 3, 1, 1, 1, 2, 1, 3, 1, 1, 3, 1, 1, 2, 2, 1, 1, 3, 1, 1, 3, 2, 1, 1, 1, 3, 1, 1, 2, 3, 1, 1, 2, 2, 2, 1, 2, 3, 1, 1, 2, 3, 1, 2
Offset: 1

Views

Author

Reinhard Zumkeller, Dec 15 2012

Keywords

Comments

A007651(n) = sum{T(n,k)*10^(A005341(n)-k): k=1..A005341(n)}.

Examples

			.  Initial rows                          A007651
.  1:  1                                           1
.  2:  1,1                                        11
.  3:  1,2                                        12
.  4:  1,1,2,1                                  1121
.  5:  1,2,2,1,1,1                            122111
.  6:  1,1,2,2,1,3                            112213
.  7:  1,2,2,2,1,1,3,1                      12221131
.  8:  1,1,2,3,1,2,3,1,1,1                1123123111
.  9:  1,2,2,1,3,1,1,1,2,1,3,1,1,3    12213111213113 .
		

Crossrefs

Cf. A005341 (row lengths), A034002 (method A version).

Programs

  • Haskell
    import Data.List (group)
    a220424 n k = a220424_tabf !! (n-1) !! (k-1)
    a220424_row n = a220424_tabf !! (n-1)
    a220424_tabf = iterate
                   (concatMap (\xs -> [head xs, length xs]) . group) [1]

A083671 Array read by rows in which each row describes in words the composition of the previous row.

Original entry on oeis.org

1, 1, 1, 2, 1, 1, 1, 1, 2, 3, 1, 1, 2, 2, 1, 1, 2, 1, 3, 3, 1, 2, 2, 1, 3, 2, 1, 2, 2, 2, 3, 1, 1, 4, 2, 1, 3, 3, 1, 1, 2, 1, 3, 1, 4, 4, 1, 1, 2, 2, 3, 1, 4, 3, 1, 2, 2, 1, 3, 2, 4, 2, 1, 3, 2, 2, 3, 1, 4, 2, 1, 3, 2, 2, 3, 1, 4, 2, 1, 3, 2, 2, 3, 1, 4, 2, 1, 3, 2, 2, 3, 1, 4, 2, 1, 3, 2, 2, 3, 1, 4, 2, 1, 3, 2, 2, 3, 1, 4, 2, 1, 3, 2, 2, 3, 1, 4
Offset: 1

Views

Author

N. J. A. Sloane, based on a query from Chasity Engle, Jan 20 2004

Keywords

Comments

Becomes periodic at row 13.

Examples

			Array begins:
1
1 1
2 1
1 1 1 2
3 1 1 2
2 1 1 2 1 3
3 1 2 2 1 3
2 1 2 2 2 3
1 1 4 2 1 3
3 1 1 2 1 3 1 4
4 1 1 2 2 3 1 4
3 1 2 2 1 3 2 4
2 1 3 2 2 3 1 4
Explanation: look at 3 1 1 2. What do you see? Two 1's, one 2 and one 3, so the next row is 2 1 1 2 1 3.
		

Crossrefs

Similar to A005151. Cf. A005150, A034002, A034003.

Programs

  • Mathematica
    NestList[Function[test, Flatten[{Count[test, # ], # } & /@ Union[test]]], {1}, 13]
    RunLengthEncode[x_List ] := (Through[ { Length, First}[ #1 ] ] &) /@ Split[ Sort[ x ]]; LookAndSay[ n_, d_:1 ] := NestList[ Flatten[ RunLengthEncode[ # ] ] &, {d}, n - 1 ]; F[n_] := LookAndSay[ n, 1 ][[ n ]]; Flatten[ Table[ F[n], {n, 18}]] (* Robert G. Wilson v, Jan 22 2004 *)

Formula

G.f.: x*(x^67 -x^65 -x^63 +x^61 -x^59 +x^57 -x^55 +x^53 -x^49 -x^45 -x^44 -x^42 +3*x^41 -x^40 +2*x^38 -x^37 -x^36 +x^35 -x^34 -2*x^33 +2*x^32 -x^30 -x^28 +x^27 +2*x^26 -x^25 -x^24 -x^22 +x^20 -2*x^19 -2*x^18 +2*x^17 -x^13 -x^12 +x^11 -2*x^9 -x^8 -x^7 -x^6 -x^5 -x^4 -2*x^3 -x^2 -x -1) / (x^8-1). - Alois P. Heinz, Jul 25 2013

Extensions

More terms from Wouter Meeussen and Robert G. Wilson v, Jan 22 2004

A240595 Look-and-Say table, where in row(n+1) the sorted list of distinct terms of row(n) is preceded by the list of numbers of their occurrences.

Original entry on oeis.org

1, 1, 1, 2, 1, 1, 1, 1, 2, 3, 1, 1, 2, 2, 1, 1, 1, 2, 3, 3, 2, 1, 1, 2, 3, 2, 2, 2, 1, 2, 3, 1, 4, 1, 1, 2, 3, 3, 1, 1, 1, 1, 2, 3, 4, 4, 1, 2, 1, 1, 2, 3, 4, 3, 2, 1, 2, 1, 2, 3, 4, 2, 3, 2, 1, 1, 2, 3, 4, 2, 3, 2, 1, 1, 2, 3, 4, 2, 3, 2, 1, 1, 2, 3, 4, 2
Offset: 1

Views

Author

Reinhard Zumkeller, Apr 08 2014

Keywords

Comments

For n > 13: row(n) = row(13), see example.

Examples

			.  1: [1] -> 1x1 -> [1 | 1] -> row(2)
.  2: [1,1] -> 2x1 -> [2 | 1] -> row(3)
.  3: [2,1] -> 1x1, 1x2 -> [1,1 | 1,2] -> row(4)
.  4: [1,1,1,2] -> 3x1, 1x2 -> [3,1 | 1,2] -> row(5)
.  5: [3,1,1,2] -> 2x1, 1x2, 1x3 -> [2,1,1 | 1,2,3] -> row(6)
.  6: [2,1,1,1,2,3] -> 3x1, 2x2, 1x3 -> [3,2,1 | 1,2,3] -> row(7)
.  7: [3,2,1,1,2,3] -> 2x1, 2x2, 2x3 -> [2,2,2 | 1,2,3] -> row(8)
.  8: [2,2,2,1,2,3] -> 1x1, 4x2, 1x3 -> [1,4,1 | 1,2,3] -> row(9)
.  9: [1,4,1,1,2,3] -> 3x1, 1x2, 1x3, 1x4 -> [3,1,1,1 | 1,2,3] -> row(10)
. 10: [3,1,1,1,1,2,3,4] -> 4x1, 1x2, 2x3, 1x4 -> [4,1,2,1 | 1,2,3,4]
. 11: [4,1,2,1,1,2,3,4] -> 3x1, 2x2, 1x3, 2x4 -> [3,2,1,2 | 1,2,3,4]
. 12: [3,2,1,2,1,2,3,4] -> 2x1, 3x2, 2x3, 1x4 -> [2,3,2,1 | 1,2,3,4]
. 13: [2,3,2,1,1,2,3,4] -> 2x1, 3x2, 2x3, 1x4 -> [2,3,2,1 | 1,2,3,4]
. 14: [2,3,2,1,1,2,3,4] = row(13).
		

Crossrefs

Cf. A034002.

Programs

  • Haskell
    import Data.List (sort, group)
    a240595 n k = a240595_tabf !! (n-1) !! (k-1)
    a240595_row n = a240595_tabf !! (n-1)
    a240595_tabf = iterate f [1] where
       f xs = concat [map length zss, map head zss]
              where zss = group $ sort xs
Showing 1-6 of 6 results.