OFFSET
1,4
COMMENTS
Finding a(n) given n is a fundamental problem from integer nonlinear programming, equivalent to minimizing the sum a+b+c when a*b*c=n and a,b,c are integers. a(n) is not strictly prime. a(n) = 1 iff n is prime (a(1)=1). a(n) <= n^(1/2) for all n.
LINKS
Eric Weisstein's World of Mathematics, Cuboid
Eric Weisstein's World of Mathematics, Sample Variance
Wikipedia, Nonlinear Programming
EXAMPLE
a(10) = 2 because the cuboid of integer edge lengths, volume = 10 and minimal possible surface area under those restrictions has edge lengths {5,2,1}
MATHEMATICA
Clear[fac, faclist, red, bool, n, a, b, c, i, ai, bi, ci]
red[n_] := Reduce[{a*b*c == n, a >= b >= c > 0}, {a, b, c}, Integers];
faclist[n_] := (
If[PrimeQ[n] || n == 1, Return[{n + 1 + 1, {n, 1, 1}}]; Abort[]];
bool = red[n];
Reap[For[i = 1, i <= Length[bool], i++,
ai = bool[[i]][[1]][[2]];
bi = bool[[i]][[2]][[2]];
ci = bool[[i]][[3]][[2]];
Sow[{ai + bi + ci, {ai, bi, ci}}]]][[2]][[1]])
fac[n_] := (
If[PrimeQ[n] || n == 1, Return[{n, 1, 1}]; Abort[]];
faclist[n][[1]][[2]])
Table[fac[k][[2]], {k, 1, 84}]
CROSSREFS
KEYWORD
nonn
AUTHOR
Joseph Biberstine (jrbibers(AT)indiana.edu), Dec 29 2004
STATUS
approved