( Kod İnceleme konulu bir sorudan ilham aldı )
İki kişinin Hangman oynadığını , ancak yalnızca oyunu duyduktan ve mevcut durumu çizmek istediğinizi varsayalım .
Girdi olarak iki kelime verildiğinde, her birinin [A-Z]+
ya da [a-z]+
(sizin seçiminiz) kelimelerinin eşleştiği yerde , aşağıdaki kuralları izleyerek, cellat oyununun mevcut durumunu ASCII sanatı olarak gösterir.
- İlk kelime tahmin edilmesi gereken kelime, ikinci kelime ise önceden tahmin edilen harflerdir. Bunlar herhangi bir sırayla girdi olarak alınabilir.
- Tahmin edilecek kelimenin boş olmadığı garantilidir, ancak önceden tahmin edilen harfler boş olabilir (örneğin, oyunun başlangıcı gibi).
- Oyun her zaman geçerli bir cellat oyunudur (yani, tahmin edilen harfler çoğaltılmayacak, harfler oyunun sonundan önce tahmin edilemeyecek, yalnızca girdi olarak harfler alacaksınız).
- Cellatçı çiziminin altında,
_
henüz bilinmeyen harfler yerine, boşluklarla ayrılmış, tahmin edilmesi gereken bir kelime olmalı . Örneğin, tahmin edilecek kelime iseBOAT
, cellat çiziminin altında olmalıydı_ _ _ _
. Kelimesi iseBOAT
ileA
tahmin etti sonra çizim olmalıdır aşağıda_ _ A _
. - Zaten tahmin harfler olmalıdır tahmin edilecek kelimenin altında değil kelime. Bunlar herhangi bir sırada olabilir ve istenirse alfabetik olmayan herhangi bir ayırıcı ile ayrılabilir.
İşte cellat oyununun durumları, başlangıçtan oyun sonuna kadar. Yanlış tahmin edilen her harf devleti birer birer ilerletir. Böylece yanlış tahmin edilen ilk harf başın O
görünmesini, diğerinin bedenin |
görünmesini vb. Sağlar.
+---+
| |
|
|
|
|
=========
+---+
| |
O |
|
|
|
=========
+---+
| |
O |
| |
|
|
=========
+---+
| |
O |
/| |
|
|
=========
+---+
| |
O |
/|\ |
|
|
=========
+---+
| |
O |
/|\ |
/ |
|
=========
+---+
| |
O |
/|\ |
/ \ |
|
=========
Giriş
- İlk boş olmayan garantili, herhangi bir uygun biçimde iki dizeleri .
- Girişi ya sırayla alabilirsiniz (örneğin, tahmin edilecek kelime ve sonra tahmin edilen harfler veya tersi). Lütfen giriş sırasını gönderiminizde belirtiniz.
Çıktı
Cellat oyununun sonuçta ortaya çıkan ASCII sanat temsili, yukarıda açıklandığı gibi, tekrar uygun bir formatta.
kurallar
- Lider ya da izleyen yeni satırlar ya da boşluklar, karakterlerin kendileri doğru bir şekilde hizalandığı sürece isteğe bağlıdır.
- Tam bir program veya bir işlev kabul edilebilir. Bir işlevse, çıktıyı yazdırmak yerine geri gönderebilirsiniz.
- Mümkünse, lütfen başkalarının kodunuzu deneyebilmesi için çevrimiçi bir test ortamına bir bağlantı ekleyin!
- Standart boşluklar yasaktır.
- Bu kod-golf olduğundan, tüm normal golf kuralları geçerlidir ve en kısa kod (bayt cinsinden) kazanır.
Örnekler
1.
BOAT
ve ATG
+---+
| |
O |
|
|
|
=========
_ _ A T
G
2.
ZEPPELIN
ve
+---+
| |
|
|
|
|
=========
_ _ _ _ _ _ _ _
3.
ZEPPELIN
ve EATOLINSHR
+---+
| |
O |
/|\ |
/ \ |
|
=========
_ E _ _ E L I N
A T O S H R
4.
RHYTHM
ve ABCDE
+---+
| |
O |
/|\ |
/ |
|
=========
_ _ _ _ _ _
EDCBA
5.
BOAT
ve ATOB
+---+
| |
|
|
|
|
=========
B O A T
6.
AIRPLANE
ve AJKEI
+---+
| |
O |
| |
|
|
=========
A I _ _ _ A _ E
KJ