Ikhtisar
Beberapa dari Anda mungkin mengetahui tentang Urutan Kolakoski ( A000002 ), urutan referensial yang diketahui dengan baik yang memiliki properti berikut:
Ini adalah urutan yang hanya berisi 1 dan 2, dan untuk setiap grup 1 dan dua, jika Anda menjumlahkan panjang run, itu sama dengan dirinya sendiri, hanya setengah panjangnya. Dengan kata lain, barisan Kolakoski menggambarkan panjang run dalam barisan itu sendiri. Ini adalah satu-satunya urutan yang melakukan ini kecuali untuk urutan yang sama dengan 1 awal dihapus. (Ini hanya benar jika Anda membatasi diri pada urutan yang terdiri dari 1s dan 2s - Martin Ender)
Tantangan
Tantangannya adalah, diberi daftar bilangan bulat:
- Keluarkan
-1
jika daftar BUKAN awalan bekerja dari urutan Kolakoski. - Keluarkan jumlah iterasi sebelum urutan menjadi
[2]
.
Contoh Berolahraga
Menggunakan gambar yang disediakan sebagai contoh:
[1,2,2,1,1,2,1,2,2,1,2,2,1,1,2,1,1] # Iteration 0 (the input).
[1,2,2,1,1,2,1,2,2,1,2] # Iteration 1.
[1,2,2,1,1,2,1,1] # Iteration 2.
[1,2,2,1,2] # Iteration 3.
[1,2,1,1] # Iteration 4.
[1,1,2] # Iteration 5.
[2,1] # Iteration 6.
[1,1] # Iteration 7.
[2] # Iteration 8.
Oleh karena itu, angka yang dihasilkan adalah 8
untuk input [1,2,2,1,1,2,1,2,2,1,2,2,1,1,2,1,1]
.
9
juga baik jika Anda melakukan pengindeksan 1.
The Test Suite (Anda juga dapat menguji dengan sub-iterasi)
------------------------------------------+---------
Truthy Scenarios | Output
------------------------------------------+---------
[1,1] | 1 or 2
[1,2,2,1,1,2,1,2,2,1] | 6 or 7
[1,2,2,1,1,2,1,2,2,1,2,2,1,1,2,1,1] | 8 or 9
[1,2] | 2 or 3
------------------------------------------+---------
Falsy Scenarios | Output
------------------------------------------+---------
[4,2,-2,1,0,3928,102904] | -1 or a unique falsy output.
[1,1,1] | -1
[2,2,1,1,2,1,2] (Results in [2,3] @ i3) | -1 (Trickiest example)
[] | -1
[1] | -1
Jika Anda bingung:
Kebenaran: Pada akhirnya akan mencapai dua tanpa langkah perantara memiliki elemen selain 1
dan 2
. -Einkorn Enchanter 20 hours ago
Falsy: Nilai akhir bukan [2]
. Istilah menengah mengandung sesuatu selain dari sesuatu yang diatur [1,2]
. Beberapa hal lain, lihat contoh.
Ini adalah kode-golf , byte-count terendah akan menjadi pemenangnya.
[2]
sampai saya melihat [2,2,1,1,2,1,2]
test case.
1
dan 2
.
[1]
sebagai ujian.
-1
?