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 A044821 #22 Jan 04 2021 18:19:48 %S A044821 1,2,3,4,5,6,7,8,9,11,22,33,44,55,66,77,88,99,100,110,111,112,113,114, %T A044821 115,116,117,118,119,122,133,144,155,166,177,188,199,200,211,220,221, %U A044821 222,223,224,225,226,227,228,229,233,244,255 %N A044821 Positive integers having distinct base-10 run lengths. %H A044821 David A. Corneth, <a href="/A044821/b044821.txt">Table of n, a(n) for n = 1..10000</a> %e A044821 117 is in the sequence because it has a run length of 2 and a run length of 1. 101 is not in the sequence because it has three run lengths of 1. - _R. J. Mathar_, Jan 18 2018 %p A044821 rlset := proc(L::list) %p A044821 local lset,rl,i ; %p A044821 lset := [] ; %p A044821 rl := 1 ; %p A044821 for i from 2 to nops(L) do %p A044821 if op(i,L) = op(i-1,L) then %p A044821 rl := rl+1 ; %p A044821 else %p A044821 lset := [op(lset),rl] ; %p A044821 rl := 1; %p A044821 end if; %p A044821 end do: %p A044821 lset := [op(lset),rl] ; %p A044821 end proc: %p A044821 isA044821 := proc(n) %p A044821 local dgs,rl; %p A044821 dgs := convert(n,base,10) ; %p A044821 rl := rlset(dgs) ; %p A044821 if nops(rl) = nops( convert(rl,set)) then %p A044821 true; %p A044821 else %p A044821 false; %p A044821 end if; %p A044821 end proc: %p A044821 for n from 1 to 400 do %p A044821 if isA044821(n) then %p A044821 printf("%d,",n) ; %p A044821 end if; %p A044821 end do: # _R. J. Mathar_, Jan 18 2018 %o A044821 (Python) %o A044821 from itertools import groupby %o A044821 def ok(n): %o A044821 runlengths = [len(list(g)) for k, g in groupby(str(n))] %o A044821 return len(runlengths) == len(set(runlengths)) %o A044821 print([i for i in range(1, 256) if ok(i)]) # _Michael S. Branicky_, Jan 04 2021 %o A044821 (PARI) is(n) = { my(runs = List(), lr = 0, d = digits(n)); for(i = 1, #d - 1, if(d[i] != d[i + 1], listput(runs, i - lr); lr = i; ) ); listput(runs, #d - lr); #Set(runs) == #runs } \\ _David A. Corneth_, Jan 04 2021 %Y A044821 Cf. A044813, A044814, A044815, A044816, A044817, A044818, A044819, A044820, A044821, A044822, A044823, A044824, A044825, A044826, A044827 (base 2 to base 16). %K A044821 nonn,base %O A044821 1,2 %A A044821 _Clark Kimberling_