Bu yorum zincirinden esinlenildi ...
Bu sorundan
enklact
kurtulmak istiyorum ama yapamam ...@ETkct (v) ' ye yapılan sunumlar : benzersiz unsurlardan oluşan bir alt bölüm kullanarak bir arama tablosu uygulamak.
Yerleştirme, bir arama tablosunu sıkıştırmanın çok kullanışlı bir yoludur. Örneğin, aşağıdaki renk listesine sahip olduğunuzu varsayalım:
red
green
blue
yellow
purple
orange
Girdi olarak bir renk almak ve bu listedeki dizinini döndürmek istiyorsanız, açıkça görüldüğü gibi basit bir yol var:
["red", "green", "blue", "yellow", "purple", "orange"].index(input())
Ancak bunu daha az bayt şekilde yapmamızın bir yolu var:
"rgbypo".index(input()[0])
Bu çalışır çünkü her dizenin ilk (veya 0') dizini benzersizdir. Bu örnek açıktır, ancak bazen biraz daha zordur. Ya bu liste için bir arama tablosu yapmak istiyorsak?
Sweet Onion Chicken Teriyaki
Oven Roasted Chicken
Turkey Breast
Italian BMT
Tuna
Black Forest Ham
Meatball Marinara
Bu durumda, bunu yapamayız:
"SOTITBM".index(input()[0])
Çünkü 'T'
"Tuna" ve "Türkiye" ile başlayan iki farklı girdi var . Farklı bir dizine bakmalıyız. Her dizginin 4. dizinine bakarsanız, hepsinin benzersiz olduğunu fark edeceksiniz. Yani bunu yapabiliriz ...
"enklact".index(input()[3])
Bu durumda, "enklaction string" "enklact" dır.
Bu bizi bugünün mücadelesine götürüyor ...
Dizelerin bir listesi göz önüne alındığında, herhangi bir geçerli enklaction dizesini döndür. Veya başka bir deyişle, bir dizge listesi verildiğinde, her harfin benzersiz olduğu herhangi bir yeni dizeyi döndürür ve dizge, her dizenin i harfi ile birleştirilerek oluşturulur.
Geçerli bir enklaction dizesi yoksa, gönderiminiz bunun yerine boş bir dize veya tutarlı bir sahte değer döndürmelidir. Her zaman olduğu gibi, işlevlere veya tam programlara izin verilir ve giriş / çıkış biçimlerine izin verilir (nedene göre).
Her dize yalnızca yazdırılabilir ASCII içerecektir ve bu zorluk büyük / küçük harf duyarlıdır.
Bu kod golf , bu yüzden seçtiğiniz dilde mümkün olan en kısa programı yazmaya çalışın!
Test durumları
Input:
Programming
Puzzles
Code
Golf
Output (any one of these):
"ozdl"
"gzef"
Input:
the quick
brown fox
jumped over
lazy dogs
Output:
"tbjl"
"hrua"
"eomz"
" wpy"
"qne "
"if o"
"kxvs"
Note that "u dd" and "coog" are not valid.
Input:
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Output:
""
Input:
AbC
aBc
bbC
Output:
"Aab"
Input:
@#$%^_
Hello_World
How are you?
Output:
"#eo"
"$lw"
"%l "
"^oa"
Input:
a
ab
ac
Output:
""