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