OFFSET
8,1
COMMENTS
For example, a 3x3x3 box can be created by using top and bottom plates of 3x3x1 voxels, and using 8 voxels to connect them, totaling 26 voxels.
FORMULA
For a given value of N (at least 8), calculate the max Volume(N)=w*h*d such that (N <= (w*h*d - (w-1)*(h-1)*(d-1)). The minimum box is 2x2x2 voxels to prevent overlapping voxels (multiple voxels occupying the same location in space) or degenerate cases.
PROG
(Java) // input: int voxels int max = 0;
for (int depth = voxels / 4; depth >= 2; depth--)
{
for (int width = voxels / (2 * depth); width >= 2; width--)
{
int remaining = voxels - 2 * width * depth;
int height = 2 + remaining / (2 * ((width - 1) + (depth - 1)));
int volume = width * depth * height;
if (max < volume)
{
max = volume;
}
}
}
CROSSREFS
KEYWORD
base,nonn
AUTHOR
Mark Jeronimus, Oct 06 2009, Dec 01 2009
EXTENSIONS
Minor edits by N. J. A. Sloane, Dec 05 2009
STATUS
approved