Bayangkan beberapa kubus yang bisa kita potong menjadi kubus yang lebih kecil tanpa potongan yang tersisa.
Temukan berapa kubus yang bisa dipotong kubus.
Misalnya, sebuah kubus dapat dipotong menjadi 8, 27 (jelas kekuatan ke-3 dari bilangan bulat) dan 20 (19 kubus kecil plus satu delapan kali ukuran yang lain, lihat gambar).
Lihat di sini beberapa bantuan: http://mathworld.wolfram.com/CubeDissection.html
Program harus mengambil integer input n( 0 <= n <= 1 000) dan mencetak semua angka kurang atau sama nsehingga kubus dapat dipotong menjadi jumlah kubus. Misalkan kubus dapat dipotong menjadi 1 kubus dan tidak bisa menjadi 0 kubus.
Anda hanya dapat menggunakan tipe data integral (tanpa array, objek, dll.) Dengan ukuran tidak lebih dari 64-bit. Kode terpendek menang.