Meydan okuma:
Pozitif bir tamsayı verildiğinde, en az iki kez meydana gelen en uzun tek basamaklı alt diziyi girin, AND başka bir basamağın (veya tamsayı başlangıç / bitişinin) sınırlarına sahiptir.
Bir örnek:
Girdi: 7888885466662716666
Tek bir basamağın en uzun sırası 5 uzunluğunda 88888
( 7[88888]5466662716666
) olur. Ancak, bu sıra tamsayıda yalnızca bir kez olur.
Bunun yerine, girişin sonucu ( ) 7888885466662716666
olmalıdır , çünkü (en az iki kez).6666
78888854[6666]271[6666]
Zorluk kuralları:
- Takiplerin uzunluğu, gerçekleşme süresine göre önceliklidir. (Yani girdi ile
8888858888866656665666
, çıkış yaparız ;88888
([88888]5[88888]66656665666
uzunluk 5, iki kez gerçekleşir) ve değil666
(88888588888[666]5[666]5[666]
; uzunluk 3, üç kez gerçekleşir). - Birden fazla alt dizinin uzunluğu eşitse, en büyük oluşum sayısıyla sonuçlanır. Girdi ile
3331113331119111
, çıkış111
(333[111]333[111]9[111]
; uzunluk 3, üç kez meydana gelir) ve değil333
([333]111[333]1119111
; uzunluk 3 de, ancak iki kez meydana gelir) - Birden fazla alt dizinin oluşum sayısı ve uzunluğu eşitse, bunlardan birini veya tümünü (herhangi bir sırayla) çıktı alabilirsiniz. Yani giriş ile
777333777333
olası çıkışlar777
:;333
;[777, 333]
; veya[333, 777]
. - Alt dizinin diğer basamakların (veya tamsayının başlangıcı / bitişi) sınırları olmalıdır. Yani girdi
122222233433
ile sonuç33
(1222222[33]4[33]
; uzunluk 2, iki kez olur) ve değil222
(1[222][222]33433
uzunluk 3, iki geçersiz ile iki kez meydana gelir).- Bu, olay sayacında sayılan tüm sayılar için geçerlidir. Girdi
811774177781382
ile sonuç8
([8]117741777[8]13[8]2
; uzunluk 1, üç kez oluşur) ve değil77
(811[77]41[77]781382
/811[77]417[77]81382
; uzunluk 2, bir geçersiz ile iki kez oluşur ) veya1
(8[1][1]774[1]7778[1]382
; uzunluk 1, iki geçersiz ile dört kez oluşur).
- Bu, olay sayacında sayılan tüm sayılar için geçerlidir. Girdi
- Girişin herhangi bir rakam içermediğini varsayabilirsiniz
0
(eşleşir[1-9]+
). (Bu10002000
çıktı gibi test davaları ile uğraşmak zorunda kalmamaktır000
, nerede dillerin çoğu çıkış alacaktı0
varsayılan olarak.) - Girdinin her zaman en az bir geçerli çıktı içereceğini varsayabilirsiniz.
- G / Ç'nin her ikisi de esnektir. Bir liste / dizi / basamak / bayt / karakter akışı veya tek bir tamsayı yerine dize olabilir.
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 mümkün olduğunca kısa bir cevap bulmaya çalışın. - 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 test içeren bir bağlantı ekleyin.
- Ayrıca, cevabınız için bir açıklama eklemeniz önemle tavsiye edilir.
Test senaryoları:
Input: 7888885466662716666 / [7,8,8,8,8,8,5,4,6,6,6,6,2,7,1,6,6,6,6]
Output: 6666 / [6,6,6,6]
Input: 3331113331119111 / [3,3,3,1,1,1,3,3,3,1,1,1,9,1,1,1]
Output: 111 / [1,1,1]
Input: 777333777333 / [7,7,7,3,3,3,7,7,7,3,3,3]
Possible outputs: 777; 333; [777,333]; [333;777] / [7,7,7]; [3,3,3]; [[7,7,7],[3,3,3]]; [[3,3,3],[7,7,7]]
Input: 122222233433 / [1,2,2,2,2,2,2,3,3,4,3,3]
Output: 33 / [3,3]
Input: 811774177781382 / [8,1,1,7,7,4,1,7,7,7,8,1,3,8,2]
Output: 8 / [8]
Input: 555153333551 / [5,5,5,1,5,3,3,3,3,5,5,1]
Output: 1 / [1]
Input: 12321 / [1,2,3,2,1]
Possible outputs: 1; 2; [1,2]; [2,1] / [1]; [2]; [[1],[2]]; [[2],[1]]
Input: 944949949494999494 / [9,4,4,9,4,9,9,4,9,4,9,4,9,9,9,4,9,4]
Output: 4 / [4]
Input: 8888858888866656665666 / [8,8,8,8,8,5,8,8,8,8,8,6,6,6,5,6,6,6,5,6,6,6]
Output: 88888 / [8,8,8,8,8]
Input: 1112221112221111 / [1,1,1,2,2,2,1,1,1,2,2,2,1,1,1,1]
Output: 111; 222; [111,222]; [222,111] / [1,1,1]; [2,2,2]; [[1,1,1],[2,2,2]]; [[2,2,2],[1,1,1]]
Input: 911133111339339339339339 / [9,1,1,1,3,3,1,1,1,3,3,9,3,3,9,3,3,9,3,3,9,3,3,9]
Output: 111 / [1,1,1]
222
diğer tamsayılarla sınırlandığı kadar çok kez gerçekleşir . Sanırım sadece bir alt dize olan oluşumu saymamalıyız 1111
. Ama OP için beklemek daha iyi.
1112221112221111
bu alt diziler ve bunların sayıları şunlardır: 1111 (1)
, 111 (2)
, 222 (2)
. Sadece iki kez, en azından oluşan dizileri çıktılar için, çıkış biri olabilir: 111
, 222
, [111,222]
, [222,111]
. Temelde (. Bazı Daha fazla bilgi için dördüncü kuralı bakınız) 1111
sadece hiç sayılır 1111
ve değil 1
ve 111
ya 11
ve 11
. Ben test durumda ekleyeceğiz, ama çıkış ya da her ikisi olan 111
ve 222
.
8888858888866656665666
. Zorluğu doğru yorumladıysam, hem Brachylog hem de 05AB1E çözümleri başarısız olur.