genel bakış
Bazılarınız , aşağıdaki özelliğe sahip kendi kendine referans dizisi olan Kolakoski Dizisinin ( A000002 ) farkında olabilir :
Sadece 1'ler ve 2'ler içeren bir dizidir ve her bir 1 ve iki grup için, eğer çalışmaların uzunluğunu eklerseniz, uzunluk yalnızca yarısına eşittir. Başka bir deyişle, Kolakoski dizisi, dizinin kendisindeki işlemlerin uzunluğunu tarif eder. Silinen ilk 1 ile aynı dizi dışında bunu yapan tek dizidir. (Bu, yalnızca kendinizi 1s ve 2s'den oluşan dizilerle sınırlarsanız geçerlidir - Martin Ender)
Meydan okuma
Zorluk, tam sayıların bir listesi halinde verilir:
- Çıktı
-1
liste Kolakoski dizisinin bir çalışma öneki DEĞİL ise. - Dizi oluşmadan önce yineleme sayısını yazınız
[2]
.
Çalışılan Örnek
Sağlanan görüntüyü örnek olarak kullanma:
[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.
Bu nedenle, sonuç numarası 8
bir giriş içindir [1,2,2,1,1,2,1,2,2,1,2,2,1,1,2,1,1]
.
9
1 indeksleme yapıyorsanız da iyidir.
Test Paketi (Alt yinelemelerle de test edebilirsiniz)
------------------------------------------+---------
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
Kafanız karıştıysa:
Hakikat: Sonunda 1
ve dışında herhangi bir öğeye sahip olan herhangi bir ara adım olmadan ikiye ulaşacaktır 2
. -Einkorn Enchanter 20 hours ago
Falsy: Bitiş değeri değil [2]
. Ara terimler, kümeden başka bir şey içerir [1,2]
. Birkaç başka şey, örneklere bakın.
Bu kod golf , en düşük bayt sayısı victor olacak.
[2]
görene kadar listenin sonunda ulaşamayacağını kastetmiştim [2,2,1,1,2,1,2]
.
1
ve dışında herhangi bir elemana sahip hiçbir ara adım olmadan iki taneye ulaşacaktır 2
.
[1]
Test olayı olarak eklemek iyi bir fikir olabilir .
-1
?