Dizelerin bir listesi göz önüne alındığında, her dizeyi, listedeki diğer dizelerin hiçbirinin alt dizisi olmayan boş olmayan alt dizelerinden biriyle ve mümkün olduğunca kısa bir değerle değiştirin.
Örnek
Liste Verilen ["hello","hallo","hola"]
, "hello"
sadece değiştirilmesi gerektiğini "e"
, bu alt dize bulunan değil "hallo"
ve "hola"
ve mümkün olduğunca kısa olduğunu. "hallo"
herhangi biri ile ikame edilebilir "ha"
ya da "al"
ve "hola"
herhangi biri ile "ho"
, "ol"
ya da "la"
.
kurallar
- Dizelerin boş olmadığını ve yalnızca aynı harfin alfabetik karakterlerini içerdiğini varsayabilirsiniz.
- Listedeki her dize için böyle bir alt dizinin bulunduğunu varsayabilirsiniz, yani listedeki hiçbir dize, diğer dizelerin hiçbirinin alt dizesi olmayacaktır.
- Giriş ve çıkış herhangi bir makul formatta olabilir.
- Bu kod-golf , bu yüzden seçtiğiniz dilde mümkün olduğunca az byte kullanmaya çalışın.
Test Kılıfları
Çoğu durumda yalnızca bir olası çıktı verilir.
["ppcg"] -> ["p"] (or ["c"] or ["g"])
["hello","hallo","hola"] -> ["e","ha","ho"]
["abc","bca","bac"] -> ["ab","ca","ba"]
["abc","abd","dbc"] -> ["abc","bd","db"]
["lorem","ipsum","dolor","sit","amet"] -> ["re","p","d","si","a"]
["abc","acb","bac","bca","cab","cba"] -> ["abc","acb","bac","bca","cab","cba"]
İlgili: En Kısa Tanımlama Alt Dilimi - benzer bir fikir, ancak daha fazla ilgili kural ve zahmetli biçim.
""
tek bir"ppcg"
durum için benzersiz tanımlayıcı değil (boş dize) ?