A357172 a(n) is the smallest integer that has exactly n divisors whose decimal digits are in strictly increasing order.
1, 2, 4, 6, 16, 12, 54, 24, 36, 48, 72, 180, 144, 360, 336, 468, 504, 936, 1008, 1512, 2520, 3024, 5040, 6552, 7560, 22680, 13104, 19656, 49140, 105840, 39312, 78624, 98280, 248976, 334152, 196560, 393120, 668304, 1244880, 1670760, 1867320, 4520880, 3341520, 3734640
Offset: 1
Examples
For n=7, the divisors of 54 are {1, 2, 3, 6, 9, 18, 27, 54} of which 7 have their digits in strictly increasing order (all except 54). No integer < 54 has 7 such divisors, so a(7) = 54.
Crossrefs
Programs
-
Mathematica
s[n_] := DivisorSum[n, 1 &, Less @@ IntegerDigits[#] &]; seq[len_, nmax_] := Module[{v = Table[0, {len}], n = 1, c = 0, i}, While[c < len && n < nmax, i = s[n]; If[i <= len && v[[i]] == 0, v[[i]] = n; c++]; n++]; v]; seq[25, 10^4] (* Amiram Eldar, Sep 16 2022 *)
-
PARI
isok(d) = Set(d=digits(d)) == d; \\ A009993 f(n) = sumdiv(n, d, isok(d)); \\ A357171 a(n) = my(k=1); while (f(k) !=n, k++); k; \\ Michel Marcus, Sep 16 2022
-
Python
from sympy import divisors from itertools import count, islice def c(n): s = str(n); return s == "".join(sorted(set(s))) def f(n): return sum(1 for d in divisors(n, generator=True) if c(d)) def agen(): n, adict = 1, dict() for k in count(1): fk = f(k) if fk not in adict: adict[fk] = k while n in adict: yield adict[n]; n += 1 print(list(islice(agen(), 37))) # Michael S. Branicky, Sep 16 2022
Extensions
More terms from Amiram Eldar, Sep 16 2022
Comments