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 A358610 #29 Dec 11 2022 12:15:09 %S A358610 1,2,4,5,8,10,13,20,25,40,50,52,100,125,200,250,400,475,500,601,848, %T A358610 908,1000,1120,1250,1750,2000,2500,2800,2900,3670,4000,4375,4685,5000, %U A358610 6085,7000,7640,7924,8375,10000,10900,12500,13346,14000,17800,20000,21568,25000 %N A358610 Numbers k such that the concatenation 1,2,3,... up to (k-1) is one less than a multiple of k. %C A358610 For a >= 0, the infinite subsequence of numbers 10^a, 2^b*10^a (for 1 <= b <= 2) and 5^c*10^a (for 1 <= c <= 3), i.e., 1, 2, 4, 5, 10, 20, 25, 40, 50, 100, 125, 200, 250, 400, 500, 1000, 1250, 2000, 2500, 4000, 5000, ... are terms in the sequence because first, the concatenation 1, 2, 3, ... up to (10^a - 1) mod 10^a is equal to 10^a times the concatenation 1, 2, 3, ... up to (10^a - 2) + (10^a - 1) mod 10^a, which results in 10^a - 1 and second, the concatenation 1, 2, 3, ... up to (2^b*10^a - 1) mod 2^b*10^a is equal to 10^(a+1) times the concatenation 1, 2, 3, ... up to (2^b*10^a - 2) + (2^b*10^a - 1) mod 2^b*10^a, which results in 2^b*10^a - 1 and third, the concatenation 1, 2, 3, ... up to (5^c*10^a - 1) mod 5^c*10^a is equal to 10^(a+c) times the concatenation 1, 2, 3, ... up to (5^c*10^a - 2) + (5^c*10^a - 1) mod 5^c*10^a, which results in 5^c*10^a - 1. %H A358610 Martin Renner, <a href="/A358610/b358610.txt">Table of n, a(n) for n = 1..92</a> %e A358610 13 is a term because 123456789101112 mod 13 = 12. %e A358610 20 is a term because 12345678910111213141516171819 mod 20 = 19. %p A358610 a:=proc(m) %p A358610 local A, str, i; %p A358610 if m = 1 then return([1]); %p A358610 else %p A358610 if m = 2 then return([1, 2]); %p A358610 else %p A358610 A := [1, 2]; %p A358610 str := 1; %p A358610 for i from 2 to m do %p A358610 str := str*10^length(i) + i; %p A358610 if str mod (i+1) = i then A := [op(A), i+1]; fi; %p A358610 od; %p A358610 fi; %p A358610 fi; %p A358610 return(A); %p A358610 end: %o A358610 (Python) %o A358610 from itertools import count, islice %o A358610 def agen(): %o A358610 s = "0" %o A358610 for n in count(1): %o A358610 if int(s)%n == n - 1: yield n %o A358610 s += str(n) %o A358610 print(list(islice(agen(), 30))) # _Michael S. Branicky_, Nov 23 2022 %Y A358610 Cf. A094151, A110740. %K A358610 nonn,base %O A358610 1,2 %A A358610 _Martin Renner_, Nov 23 2022