Imaginez un cube que nous pouvons couper en cubes plus petits sans morceaux restants.
Trouvez combien de cubes un cube peut être coupé.
Par exemple, un cube peut être coupé en 8, 27 (évidemment les 3èmes puissances d'entiers) et 20 (19 petits cubes plus un huit fois la taille des autres, voir image).
Voir ici de l'aide: http://mathworld.wolfram.com/CubeDissection.html
Le programme doit prendre comme entier
n
( 0 <= n <= 1 000
) d' entrée et imprimer tous les nombres inférieurs ou égaux pour n
qu'un cube puisse être coupé en ce nombre de cubes. Supposons que le cube puisse être coupé en 1 cube et ne puisse pas être en 0 cube.
Vous ne pouvez utiliser que des types de données intégraux (pas de tableaux, d'objets, etc.) d'une taille ne dépassant pas 64 bits. Le code le plus court gagne.