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.
%I A275512 #11 Aug 02 2016 08:44:39 %S A275512 1,2,3,4,5,6,7,8,9,10,11,20,12,13,14,22,15,16,17,18,23,19,21,31,41,51, %T A275512 24,25,26,27,28,29,30,32,33,34,35,36,37,38,39,40,42,43,44,45,46,47,48, %U A275512 49,50,52,53,54,55,56,57,58,59,60,61,71,81,91,100,101,62,63,64,65,66,67,68,69,70,72,73,74,75,76,77,78,79,80,82,83,84,85,86,87,88,89,90 %N A275512 The consecutive sizes of the blocks of terms containing at least one digit "1" are given by the sequence itself. %C A275512 The sequence starts with a(1) = 1 and is extended with the smallest integer not yet used that does not lead to a contradiction. %e A275512 The blocks of terms including at least a digit "1" are indicated here by parentheses; the successive block-sizes are 1, 2, 3, 4, 5,... which reproduces the sequence itself: (1),2,3,4,5,6,7,8,9,(10,11),20,(12,13,14),22,(15,16,17,18),23,(19,21,31,41,51),24... %p A275512 isA011531 := proc(n) %p A275512 nops(convert(convert(n,base,10),set) intersect {1}) > 0 ; %p A275512 simplify(%) ; %p A275512 end proc: %p A275512 A011531_next := proc(n) %p A275512 local a; %p A275512 for a from n+1 do %p A275512 if isA011531(a) then %p A275512 return a; %p A275512 end if; %p A275512 end do: %p A275512 end proc: %p A275512 isA052383 := proc(n) %p A275512 not isA011531(n) ; %p A275512 end proc: %p A275512 A052383_next := proc(n) %p A275512 local a; %p A275512 for a from n+1 do %p A275512 if isA052383(a) then %p A275512 return a; %p A275512 end if; %p A275512 end do: %p A275512 end proc: %p A275512 A275512grp1 := proc(a) %p A275512 local idx1,n ; %p A275512 idx1 := 0 ; %p A275512 if isA052383(a) then %p A275512 return 0; %p A275512 end if; %p A275512 for n from 1 do %p A275512 if isA011531(A275512(n)) then %p A275512 if n =1 then %p A275512 idx1 := 1; %p A275512 elif isA052383(A275512(n-1)) then %p A275512 idx1 := idx1+1 ; %p A275512 end if; %p A275512 end if; %p A275512 if A275512(n) = a then %p A275512 return idx1 ; %p A275512 end if; %p A275512 end do: %p A275512 end proc: %p A275512 A275512 := proc(n) %p A275512 option remember; %p A275512 local a,aprev,prev1,grp1,d,seen,reqlen,npr; %p A275512 if n =1 then %p A275512 1; %p A275512 else %p A275512 for a from 2 do %p A275512 seen := false; %p A275512 for npr from 1 to n-1 do %p A275512 if procname(npr) = a then %p A275512 seen := true; %p A275512 break; %p A275512 end if; %p A275512 end do: %p A275512 if not seen then %p A275512 aprev := procname(n-1) ; %p A275512 if isA052383(aprev) then %p A275512 return a; %p A275512 else %p A275512 prev1 := 0 ; %p A275512 for d from 1 to n-1 do %p A275512 if isA011531(procname(n-d)) then %p A275512 prev1 := prev1+1 ; %p A275512 else %p A275512 break; %p A275512 end if; %p A275512 end do: %p A275512 grp1 := A275512grp1(aprev) ; %p A275512 reqlen := procname(grp1) ; %p A275512 if reqlen > prev1 then %p A275512 return A011531_next(aprev) ; %p A275512 elif n-prev1-1 > 0 then %p A275512 return A052383_next(procname(n-prev1-1)) ; %p A275512 else %p A275512 return 2 ; %p A275512 end if; %p A275512 end if; %p A275512 end if; %p A275512 end do; %p A275512 end if; %p A275512 end proc: %p A275512 seq(A275512(n),n=1..100) ; # _R. J. Mathar_, Jul 31 2016 %Y A275512 Cf. A011531, A052383. %K A275512 nonn,base,less %O A275512 1,2 %A A275512 _Eric Angelini_, Jul 31 2016