A051885(n) = ((n%9)+1)*10^(n\9)-1 A228915(n) = \ my (r=0, p=0, d); \ while (1, \ d = n%10; \ if (d<9 && r>0, \ return ((n+1)*10^p + A051885(r-1)) \ ); \ n = n\10; \ p = p+1; \ r = r+d \ ) a(n) = { my (c=apply(A051885, divisors(n)), d=sumdigits(n)); if (d!=2^valuation(d,2)*5^valuation(d,5), c=c[2..#c]; ); while (c[1]%d, c=setunion(c[2..#c], [A228915(c[1])]); ); c[1] } for (n=1, 500, print (n " " a(n))) quit