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 ( ) 7888885466662716666olmalıdır , çünkü (en az iki kez).666678888854[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]66656665666uzunluk 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
777333777333olası çı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
122222233433ile sonuç33(1222222[33]4[33]; uzunluk 2, iki kez olur) ve değil222(1[222][222]33433uzunluk 3, iki geçersiz ile iki kez meydana gelir).- Bu, olay sayacında sayılan tüm sayılar için geçerlidir. Girdi
811774177781382ile 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ı0varsayı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]
222diğ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.
1112221112221111bu 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) 1111sadece hiç sayılır 1111ve değil 1ve 111ya 11ve 11. Ben test durumda ekleyeceğiz, ama çıkış ya da her ikisi olan 111ve 222.
8888858888866656665666. Zorluğu doğru yorumladıysam, hem Brachylog hem de 05AB1E çözümleri başarısız olur.