Pendahuluan (dapat diabaikan)
Menempatkan semua angka positif dalam urutan regulernya (1, 2, 3, ...) agak membosankan, bukan? Jadi di sini adalah serangkaian tantangan seputar permutasi (perombakan) dari semua bilangan positif. Ini adalah tantangan ketiga dalam seri ini (tautan ke tantangan pertama dan kedua ).
Dalam tantangan ini, kita akan mengatur bilangan asli dalam deretan panjang yang bertambah sedemikian rupa sehingga jumlah setiap baris adalah bilangan prima. Apa yang saya temukan sangat menakjubkan tentang ini, adalah bahwa setiap bilangan alami memiliki tempat dalam pengaturan ini. Tidak ada angka yang terlewati!
Visualisasi pengaturan ini terlihat seperti ini:
row numbers sum
1 1 1
2 2 3 5
3 4 5 8 17
4 6 7 9 15 37
5 10 11 12 13 21 67
6 14 16 17 18 19 23 107
etc.
Kita bisa membaca elemen dari baris dalam segitiga ini. 20 elemen pertama adalah: 1, 2, 3, 4, 5, 8, 6 , 7, 9, 15, 10, 11, 12, 13, 21, 14, 16, 17, 18, 19 ( ya, ada lagu Orde Baru disembunyikan dalam urutan ini ).
Karena ini adalah tantangan "urutan murni", tugasnya adalah mengeluarkan untuk diberikan sebagai input, di mana adalah A162371 .
Tugas
Diberikan input integer , output dalam format integer.
didefinisikan sebagaielemen ke- dari permutasi paling awal secara leksikografis dari bilangan asli sehingga, ketika dilihat sebagai segitiga yang dibaca oleh baris, untuk n> 1 jumlah baris adalah bilangan prima. Karena permutasi leksikografis pertama dari bilangan asli dimulai dengan 1, adalah 1. Perhatikan bahwa dengan definisi ini dan yangtidakdiperlukan untuk menjadi perdana. Ini adalah urutan OEISA162371.
Catatan: pengindeksan berbasis 1 diasumsikan di sini; Anda dapat menggunakan pengindeksan berbasis 0, jadi , dll. Sebutkan ini dalam jawaban Anda jika Anda memilih untuk menggunakan ini.
Uji kasus
Input | Output
---------------
1 | 1
5 | 5
20 | 19
50 | 50
78 | 87
123 | 123
1234 | 1233
3000 | 3000
9999 | 9999
29890 | 29913
Aturan
- Input dan output adalah bilangan bulat (program Anda setidaknya harus mendukung input dan output dalam kisaran 1 hingga 32767)
- Input yang tidak valid (0, float, string, nilai negatif, dll.) Dapat mengakibatkan output yang tidak terduga, kesalahan atau (tidak) perilaku yang didefinisikan.
- Standar I / O aturan berlaku.
- Celah default dilarang.
- Ini adalah kode-golf , jadi jawaban tersingkat dalam byte menang