Seorang anak penasaran menggunakan sebuah program yang dapat pd nomor atau ekspresi ke dalam bentuk berikut: p1^e1 * p2^e2 * ... * pn^en
. Eksponen yang sama dengan 1
dihilangkan misalnya360 = 2^3 * 3^2 * 5
Anak itu mengetik output ini ke dalam program sebagai input baru tetapi dia tidak mengerti ^
tanda jadi kadang-kadang dia melewatkan satu atau lebih dari mereka yang menggabungkan basis-basis dan eksponen yang sesuai. Misalnya(360 =) 2^3 * 3^2 * 5 => 2^3 * 32 * 5 (= 1280)
Karena kesalahan ini dia mungkin mendapatkan faktorisasi yang berbeda yang dapat dia masukan lagi (dengan melewatkan 0 atau lebih ^
). Dia mengulangi prosesnya sampai faktorisasi tidak berubah lagi (mungkin tidak ada lagi ^
atau dia menyalin hasilnya dengan benar).
Anda harus menulis sebuah program atau fungsi yang memberikan integer n
( n>1
) menampilkan semua angka yang mungkin dalam urutan yang meningkat yang faktorisasinya bisa menjadi faktor yang diakibatkan oleh anak tersebut (termasuk n
). Misalnya untuk input 16
, kemungkinan faktorisasi terakhir adalah(16 =) 2^4, (24 =) 2^3 * 3, (23*3 =) 3 * 23
Detail input:
- input adalah bilangan bulat tunggal yang lebih besar dari
1
- tidak ada input yang diberikan yang menghasilkan jumlah output lebih besar dari
2^31-1
- tidak ada input yang akan diberikan yang menghasilkan lebih dari
1000
angka output
Rincian keluaran:
- daftar bilangan bulat dalam bentuk yang nyaman untuk bahasa Anda
Contoh:
Input => Output
11 => 11
16 => 16 24 69
360 => 140 360 770 1035 1219 1280 2875 3680
605 => 560 605 840 2415
2048 => 211 2048
58564 => 230 456 1311 2508 9975 12768 13794 20748 58564 114114 322102
Ini adalah kode-golf sehingga program terpendek menang.