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.

A166511 Comma numbers: n=concat(a,b) occurs in the sequence S[0]=a, S[1]=b, S[k+1]=S[k]+10*last_digit(S[k-1])+first_digit(S[k]).

Original entry on oeis.org

10, 20, 30, 40, 50, 60, 70, 80, 90, 109, 123, 148, 160, 163, 185, 198, 199, 241, 340, 362, 398, 422, 423, 444, 522, 540, 541, 550, 564, 597, 621, 622, 667, 683, 693, 724, 769, 770, 780, 806, 811, 835, 842, 888, 972, 1023, 1044, 1053, 1054, 1116, 1146, 1177
Offset: 1

Views

Author

Eric Angelini and M. F. Hasler, Oct 28 2009

Keywords

Comments

A comma number n is the concatenation of numbers a,b (no leading zeros allowed) which occurs ("again") in the comma sequence S = S(a,b) defined by S[0]=a, S[1]=b, S[n+1] = S[n] + 10*last_digit(S[n-1]) + first_digit(S[n]), i.e., add to a given term the number formed by the two digits surrounding the preceding comma.
The sequence S is infinite and straightforward to compute, in contrast to the implicitly defined terms of A121805.
The sequence S(a,b) is strictly increasing, unless a=0 (mod 10) and b=0 (which implies n=0 (mod 100)), in which case all following terms are zero.

Examples

			a(1)=10 is in the sequence, because splitting 10 into (1,0) gives the sequence S(1,0) = 1, 0, 0+10=10, 10+01=11, 11+01=12, 12+11=23,... which contains 10.
a(10)=109 is in the sequence, because splitting 109 into (10,9) gives the sequence S(10,9) = 10, 9, 9+09=18, 18+91=109, 109+81=190,... which contains 109.
108 is not in the sequence since S(10,8) does not contain 108 and it is not allowed to split 108 -> 1,08 -> S(1,08).
		

Crossrefs

See also subsequences A166508, containing A166509, and A166512, containing A166513.

Programs

  • PARI
    {for(n=1,1e4,/*iscomma(n)=*/for(d=1,#Str(n)-1, my( a=n\10^d, b=n%10^d ); b<10^(d-1) & (d>1 || a%10==0) & next; while(n > b=10*(a%10)+b\10^(#Str(b)-1)+a=b,); b>n & next; /*return(1)*/ print1(n", "); break))}