Meydan okuma:
Giriş:
Pozitif tamsayıların sıralı bir listesi.
Çıktı:
Hâlâ tam olarak aynı indekste olan tamsayıların miktarı, her tamsayıdaki rakamlar endeks miktarını sola doğru döndürdükten ve değiştirilen listeyi tekrar sıraladıktan sonra.
Örnek:
Girdi: [8,49,73,102,259,762,2782,3383,9217,37846,89487,7471788]
Çıktı (0 tabanlı dizinleme): 6
Çıktı (1 tabanlı dizinleme):5
Neden?
0 tabanlı indeksleme:
After rotating each: [8,94,73,102,592,276,8227,3338,9217,63784,89487,7887471]
Sorted again: [8,73,94,102,276,592,3338,8227,9217,63784,89487,7887471]
Input indices: 0 1 2 3 4 5 6 7 8 9 10 11
Original input-list: [8,49,73,102,259,762,2782,3383,9217,37846,89487,7471788]
Modified list: [8,73,94,102,276,592,3338,8227,9217,63784,89487,7887471]
Modified indices: 0 2 1 3 5 4 7 6 8 9 10 11
Equal indices: ^ ^ ^ ^ ^ ^
So the output is: 6
1 tabanlı indeksleme:
After rotating each: [8,49,37,021,925,762,2278,3383,2179,37846,94878,8874717]
Sorted again: [8,(0)21,37,49,762,925,2179,2278,3383,37846,94878,8874717]
Input indices: 1 2 3 4 5 6 7 8 9 10 11 12
Original input-list: [8,49,73,102,259,762,2782,3383,9217,37846,89487,7471788]
Modified list: [8,21,37,49,762,925,2179,2278,3383,37846,94878,8874717]
Modified indices: 1 4 3 2 6 5 9 7 8 10 11 12
Equal indices: ^ ^ ^ ^ ^
So the output is: 5
Zorluk kuralları:
- Giriş listesinin yalnızca pozitif tamsayılar içereceği garanti edilir.
- Giriş listesinin en düşükten en yükseğe doğru sıralanması garanti edilir.
- Giriş listesinin en az iki öğe içermesi garanti edilir.
- Yukarıda görebileceğiniz gibi, hem 0 tabanlı hem de 1 tabanlı dizine eklemeye izin verilir. Lütfen cevaplarınızda hangisini kullandığınızı belirtin, çünkü çıktılar buna göre değişebilir!
- Döndürmeden
0
sonraki öncüler yok sayılır; bu, yukarıdaki tamsayının döndürüldükten sonra102
hale geldiği021
ve daha sonra olduğu gibi ele alındığı yukarıdaki 1 tabanlı örnekle görülebilir21
. - Tamsayıların giriş listesinde benzersiz olduğu ve rotasyonlar tamamlandıktan sonra benzersiz kalacağı garanti edilir.
- Giriş listesinin değerleriyle değil, yalnızca döndürülen tamsayıların konumlarının girdinin konumlarıyla ilişkili olarak baktığımızı unutmayın. Bununla ne demek istediğimi açıklığa kavuşturmak için: giriş listesi
[1234,3412]
ve 1 tabanlı indeksleme ile, liste[2341,1234]
her bir tamsayıyı döndürdükten sonra dizin sayısıdır ve sonra sıralanır[1234,2341]
. Hem orijinal giriş listesi hem de döndürülen liste1234
önde gelen konumda tamsayı içermesine rağmen , bunlar aynı değildir! Döndürülmüş1234
oldu3412
önce. Bu nedenle0
, iki tamsayı konumlarını değiştirdiği için, bu girdi listesi için 1 dizinli çıktıdır . - Giriş esnektir. Bir liste / akış / tamsayılar dizesi / dizeler / rakam dizileri vb. Olabilir. Girişleri tamsayı olarak almadıysanız lütfen ne kullandığınızı belirtin.
Genel kurallar:
- Bu kod golf , bayt en kısa cevap kazanır.
Kod golf dillerinin, kod yazmayan dillerle yanıt göndermenizi engellemesine izin vermeyin. 'Herhangi bir' programlama dili için olabildiğince kısa bir cevap bulmaya çalışın. - Varsayılan I / O kuralları ile cevabınız için standart kurallar geçerlidir , bu nedenle STDIN / STDOUT, fonksiyonlar / yöntem uygun parametreler ve dönüş tipi, tam programlar ile kullanılabilir. Çağrınız.
- Varsayılan Loopholes yasaktır.
- Mümkünse, lütfen kodunuz için bir test içeren bir bağlantı ekleyin (örn. TIO ).
- Ayrıca, cevabınız için bir açıklama eklemeniz şiddetle tavsiye edilir.
Test senaryoları:
Input: [8, 49, 73, 102, 259, 762, 2782, 3383, 9217, 37846, 89487, 7471788]
0-based output: 6
1-based output: 5
Input: [1234, 3412]
0-based output: 2
1-based output: 0
Input: [2349, 2820, 17499, 21244, 29842, 31857, 46645, 56675, 61643, 61787]
0-based output: 3
1-based output: 0
Input: [4976, 11087, 18732, 22643, 52735]
0-based output: 2
1-based output: 3
Input: [4414, 5866, 7175, 8929, 14048, 16228, 16809, 19166, 24408, 25220, 29333, 44274, 47275, 47518, 53355]
0-based output: 4
1-based output: 4
Input: [11205, 16820, 63494]
0-based output: 1
1-based output: 3
Girişin rastgele listenin boyutu olduğu bu ungolfed 05AB1E programıyla daha rasgele test senaryoları oluşturmaktan (ya da ilham almaktan çekinmeyin ) (NOT: bu jeneratörün çıkışı " Tamsayıların benzersiz olduğu garanti edilir giriş listesi ve dönüşler tamamlandıktan sonra benzersiz kalması garanti edilir ", bu nedenle bunu kullanırken aklınızda bulundurun.)