Imagine un cubo que podamos cortar en cubos más pequeños sin piezas restantes.
Averigua cuántos cubos puede cortar un cubo.
Por ejemplo, un cubo se puede cortar en 8, 27 (obviamente 3er potencias de enteros) y 20 (19 cubos pequeños más uno ocho veces el tamaño de los otros, ver imagen).
Vea aquí algo de ayuda: http://mathworld.wolfram.com/CubeDissection.html
El programa debe tomar como entero de entrada n
( 0 <= n <= 1 000
) e imprimir todos los números menores o iguales para n
que un cubo se pueda cortar en ese número de cubos. Suponga que el cubo se puede cortar en 1 cubo y no se puede cortar en 0 cubos.
Puede usar solo tipos de datos integrales (sin matrices, objetos, etc.) de tamaño no mayor a 64 bits. El código más corto gana.