login
A005179
Smallest number with exactly n divisors.
(Formerly M1026)
220
1, 2, 4, 6, 16, 12, 64, 24, 36, 48, 1024, 60, 4096, 192, 144, 120, 65536, 180, 262144, 240, 576, 3072, 4194304, 360, 1296, 12288, 900, 960, 268435456, 720, 1073741824, 840, 9216, 196608, 5184, 1260, 68719476736, 786432, 36864, 1680, 1099511627776, 2880
OFFSET
1,2
COMMENTS
A number n is called ordinary iff a(n)=A037019(n). Brown shows that the ordinary numbers have density 1 and all squarefree numbers are ordinary. See A072066 for the extraordinary or exceptional numbers. - M. F. Hasler, Oct 14 2014
All terms are in A025487. Therefore, a(n) is even for n > 1. - David A. Corneth, Jun 23 2017 [corrected by Charles R Greathouse IV, Jul 05 2023]
REFERENCES
M. Abramowitz and I. A. Stegun, eds., Handbook of Mathematical Functions, National Bureau of Standards Applied Math. Series 55, 1964 (and various reprintings), p. 840.
L. E. Dickson, History of the Theory of Numbers. Carnegie Institute Public. 256, Washington, DC, Vol. 1, 1919; Vol. 2, 1920; Vol. 3, 1923, see vol. 1, p. 52.
J. Roberts, Lure of the Integers, Math. Assoc. America, 1992, p. 86.
N. J. A. Sloane and Simon Plouffe, The Encyclopedia of Integer Sequences, Academic Press, 1995 (includes this sequence).
LINKS
Matthew House, Table of n, a(n) for n = 1..3322 (terms 1..2000 from Don Reble)
M. Abramowitz and I. A. Stegun, eds., Handbook of Mathematical Functions, National Bureau of Standards, Applied Math. Series 55, Tenth Printing, 1972 [alternative scanned copy].
R. Brown, The minimal number with a given number of divisors, Journal of Number Theory 116 (2006) 150-158.
M. E. Grost, The smallest number with a given number of divisors, Amer. Math. Monthly, 75 (1968), 725-729.
J. Roberts, Lure of the Integers, Annotated scanned copy of pp. 81, 86 with notes.
Anna K. Savvopoulou and Christopher M. Wedrychowicz, On the smallest number with a given number of divisors, The Ramanujan Journal, 2015, Vol. 37, pp. 51-64.
David Singmaster, Letter to N. J. A. Sloane, Oct 03 1982.
T. Verhoeff, Rectangular and Trapezoidal Arrangements, J. Integer Sequences, Vol. 2, 1999, #99.1.6.
Eric Weisstein's World of Mathematics, Divisor
R. G. Wilson v, Letter to N. J. A. Sloane, Dec 17 1991.
FORMULA
a(p) = 2^(p-1) for primes p: a(A000040(n)) = A061286(n); a(p^2) = 6^(p-1) for primes p: a(A001248(n)) = A061234(n); a(p*q) = 2^(q-1)*3^(p-1) for primes p<=q: a(A001358(n)) = A096932(n); a(p*m*q) = 2^(q-1) * 3^(m-1) * 5^(p-1) for primes p<m<q: A005179(A007304(n)) = A061299(n). - Reinhard Zumkeller, Jul 15 2004
a(p^n) = (2*3...*p_n)^(p-1) for p > log p_n / log 2. Unpublished proof from Andrzej Schinzel. - Thomas Ordowski, Jul 22 2005
If p is a prime and n=p^k then a(p^k)=(2*3*...*s_k)^(p-1) where (s_k) is the numbers of the form q^(p^j) for every q and j>=0, according to Grost (1968), Theorem 4. For example, if p=2 then a(2^k) is the product of the first k members of the A050376 sequence: number of the form q^(2^j) for j>=0, according to Ramanujan (1915). - Thomas Ordowski, Aug 30 2005
a(2^k) = A037992(k). - Thomas Ordowski, Aug 30 2005
a(n) <= A037019(n) with equality except for n in A072066. - M. F. Hasler, Jun 15 2022
MAPLE
A005179_list := proc(SearchLimit, ListLength)
local L, m, i, d; m := 1;
L := array(1..ListLength, [seq(0, i=1..ListLength)]);
for i from 1 to SearchLimit while m <= ListLength do
d := numtheory[tau](i);
if d <= ListLength and 0 = L[d] then L[d] := i;
m := m + 1; fi
od:
print(L) end: A005179_list(65537, 18);
# If a '0' appears in the list the search limit has to be increased. - Peter Luschny, Mar 09 2011
# alternative
# Construct list of ordered lists of factorizations of n with
# minimum divisors mind.
# Returns a list with A001055(n) entries if called with mind=2.
# Example: print(ofact(10^3, 2))
ofact := proc(n, mind)
local fcts, d, rec, r ;
fcts := [] ;
for d in numtheory[divisors](n) do
if d >= mind then
if d = n then
fcts := [op(fcts), [n]] ;
else
# recursive call supposed one more factor fixed now
rec := procname(n/d, max(d, mind)) ;
for r in rec do
fcts := [op(fcts), [d, op(r)]] ;
end do:
end if;
end if;
end do:
return fcts ;
end proc:
A005179 := proc(n)
local Lexp, a, eList, cand, maxxrt ;
if n = 1 then
return 1;
end if;
Lexp := ofact(n, 2) ;
a := 0 ;
for eList in Lexp do
maxxrt := ListTools[Reverse](eList) ;
cand := mul( ithprime(i)^ ( op(i, maxxrt)-1), i=1..nops(maxxrt)) ;
if a =0 or cand < a then
a := cand ;
end if;
end do:
a ;
end proc:
seq(A005179(n), n=1..40) ; # R. J. Mathar, Jun 06 2024
MATHEMATICA
a = Table[ 0, {43} ]; Do[ d = Length[ Divisors[ n ]]; If[ d < 44 && a[[ d ]] == 0, a[[ d]] = n], {n, 1, 1099511627776} ]; a
(* Second program: *)
Function[s, Map[Lookup[s, #] &, Range[First@ Complement[Range@ Max@ #, #] - 1]] &@ Keys@ s]@ Map[First, KeySort@ PositionIndex@ Table[DivisorSigma[0, n], {n, 10^7}]] (* Michael De Vlieger, Dec 11 2016, Version 10 *)
mp[1, m_] := {{}}; mp[n_, 1] := {{}}; mp[n_?PrimeQ, m_] := If[m < n, {}, {{n}}]; mp[n_, m_] := Join @@ Table[Map[Prepend[#, d] &, mp[n/d, d]], {d, Select[Rest[Divisors[n]], # <= m &]}]; mp[n_] := mp[n, n]; Table[mulpar = mp[n] - 1; Min[Table[Product[Prime[s]^mulpar[[j, s]], {s, 1, Length[mulpar[[j]]]}], {j, 1, Length[mulpar]}]], {n, 1, 100}] (* Vaclav Kotesovec, Apr 04 2021 *)
PROG
(PARI) (prodR(n, maxf)=my(dfs=divisors(n), a=[], r); for(i=2, #dfs, if( dfs[i]<=maxf, if(dfs[i]==n, a=concat(a, [[n]]), r=prodR(n/dfs[i], min(dfs[i], maxf)); for(j=1, #r, a=concat(a, [concat(dfs[i], r[j])]))))); a); A005179(n)=my(pf=prodR(n, n), a=1, b); for(i=1, #pf, b=prod(j=1, length(pf[i]), prime(j)^(pf[i][j]-1)); if(b<a || i==1, a=b)); a
for(n=1, 100, print1(A005179(n)", ")) \\ R. J. Mathar, May 26 2008, edited by M. F. Hasler, Oct 11 2014
(Haskell)
import Data.List (elemIndex)
import Data.Maybe (fromJust)
a005179 n = succ $ fromJust $ elemIndex n $ map a000005 [1..]
-- Reinhard Zumkeller, Apr 01 2011
(Python)
from math import prod
from sympy import isprime, divisors, prime
def A005179(n):
def mult_factors(n):
if isprime(n):
return [(n, )]
c = []
for d in divisors(n, generator=True):
if 1<d<n:
for a in mult_factors(n//d):
c.append(tuple(sorted((d, )+a)))
return list(set(c))
return min((prod(prime(i)**(j-1) for i, j in enumerate(reversed(d), 1)) for d in mult_factors(n)), default=1) # Chai Wah Wu, Aug 17 2024
KEYWORD
nonn,nice,easy
AUTHOR
N. J. A. Sloane, David Singmaster
EXTENSIONS
More terms from David W. Wilson
STATUS
approved