想象一些立方体,我们可以将其切成较小的立方体,而没有剩余的碎片。
查找一个立方体可以切割多少个立方体。
例如,一个立方体可以切成8个,27个(显然是整数的3阶次幂)和20个(19个小立方体加一个其他立方体大小的八分之一,见图)。
在这里看到一些帮助:http : //mathworld.wolfram.com/CubeDissection.html
程序应将整数n
(0 <= n <= 1 000
)作为输入,并打印所有小于或等于的数字,n
以便可以将一个立方体切成该数目的立方体。假设可以将多维数据集切成1个多维数据集,而不能切成0个多维数据集。
您只能使用大小不超过64位的整数数据类型(无数组,对象等)。最短的代码胜出。