%I #44 Apr 18 2021 02:16:10
%S 1,1,1,2,1,1,2,2,1,2,2,1,1,2,2,2,1,3,2,1,1,1,3,1,2,3,1,1,3,1,1,1,2,1,
%T 3,2,1,1,3,3,1,1,2,1,1,1,3,1,2,2,1,2,3,2,1,1,2,3,1,1,3,1,1,2,2,1,1,1,
%U 2,1,3,1,2,2,1,1,2,1,3,2,1,1,3,2,1,2,2
%N A continuous "Look and Say" sequence (without repetition, method 2).
%C A variant of Conway's 'Look-and-Say' sequence A005150, without run cut-off. It describes at each step the preceding digits taken altogether.
%C There are different optional rules to build such a sequence. This method 2 does not consider already said digits.
%C As in the original Look-and-Say sequence, a(n) is always equal to 1, 2 or 3. The subsequence 3,3,3 never appears.
%C The sequence is determined by pairs of digits. Terms of even rank are counts while terms of odd rank are figures.
%H J.-C. Hervé, <a href="/A221646/b221646.txt">Table of n, a(n) for n = 1..10000</a>
%e a(1) = 1, then a(2) = 1 and a(3) = 1 (one 1). Leaving out the first 1 already said, we now have two 1's, then a(4) = 2 and a(5) = 1, and then a(6) = 1, a(7) = 2, a(8) = 2, a(9) = 1, etc.
%t n = 100; a[0] = 1; see = say = 0; While[say < n - 1, c = 0; dg = a[see]; While[see <= say, If[a[see] == dg, c += 1, Break[]]; see += 1]; a[++say] = c; If[say < n - 1, a[++say] = dg]]; Array[a, n, 0] (* _Jean-François Alcover_, Jul 11 2013, translated and adapted from J.-C. Hervé's C program *)
%o (C) /* computes first n terms in array a[] */
%o int *swys(int n) {
%o int a[n] ;
%o int see, say, c ;
%o a[0] = 1;
%o see = say = 0 ;
%o while( say < n-1 ) {
%o c = 0 ; /* count */
%o dg = a[see] /* digit */
%o while (see <= say) {
%o if (a[see]== dg) c += 1 ;
%o else break ;
%o see += 1 ;
%o }
%o a[++say] = c ;
%o if (say < n-1) a[++say] = dg ;
%o }
%o return(a);
%o }
%Y Cf. A005150 (original look-and-say sequence).
%Y Cf. A225212, A225224 (other continuous variants).
%K nonn,easy
%O 1,4
%A _Jean-Christophe Hervé_, May 05 2013