Bir satranç oyununun mevcut durumunu temsil eden 8x8 harflik bir ızgara göz önüne alındığında, programınızın görevi beyaz için bir sonraki hamle ile sonuçlanan bir sonraki hamleyi bulmaktır (cevap her hamlede eş olacaktır).
Giriş
Giriş STDIN - her biri 8 karakterden oluşan 8 satırda olacaktır. Her karakterin anlamları aşağıdaki gibidir:
K/k - king
Q/q - queen
B/b - bishop
N/n - knight
R/r - rook
P/p - pawn
- - empty square
Büyük harfler beyaz parçaları, küçük harfler siyahı temsil eder. Tahta, beyaz alttan yukarıya ve siyah üstten aşağıya doğru olacak şekilde yönlendirilecektir.
Çıktı
Cebir gösteriminde şah matla sonuçlanan beyaz hareket . Bir parça alındığında not etmek zorunda değilsiniz veya aynı hareketi yapabilecek iki özdeş parça arasında ayrım yapmaktan endişelenmenize gerek yok.
Örnek giriş
örnek 1
Giriş:
------R-
--p-kp-p
-----n--
--PPK---
p----P-r
B-------
--------
--------
Çıktı:
c6
ÖRNEK 2
Giriş:
--b-r--r
ppq-kp-p
-np-pn-B
--------
---N----
--P----P
PP---PP-
R--QRBK-
Çıktı:
Nf5
ÖRNEK 3
Giriş:
---r-nr-
-pqb-p-k
pn--p-p-
R-------
--------
-P-B-N-P
-BP--PP-
---QR-K-
Çıktı:
Rh5
Çözümün, döküm veya en-passant içermediğini varsayabilirsiniz.
Bu kod golf - en kısa çözüm kazanır.
(Örnekler mateinone.com'dan alınmıştır - bulmaca 81, 82 ve 83)