Представьте себе какой-нибудь куб, который мы можем разрезать на более мелкие кубики без оставшихся кусочков.
Найдите, на сколько кубов можно нарезать куб.
Например, куб можно разрезать на 8, 27 (очевидно, 3-й степени целых чисел) и 20 (19 маленьких кубиков плюс один в восемь раз больше остальных, см. Изображение).
Смотрите здесь некоторую помощь: http://mathworld.wolfram.com/CubeDissection.html
Программа должна принимать в качестве входных данных целое число n
( 0 <= n <= 1 000
) и печатать все числа, меньшие или равные n
так, чтобы куб можно было разрезать на это количество кубов. Предположим, что куб можно разрезать на 1 куб, а не на 0 кубов.
Вы можете использовать только целые типы данных (без массивов, объектов и т. Д.) Размером не более 64 бит. Самый короткий код выигрывает.