ด้วยตารางตัวอักษรขนาด 8x8 ที่แสดงถึงสถานะปัจจุบันของเกมหมากรุกงานของโปรแกรมของคุณคือการค้นหาการเคลื่อนไหวครั้งต่อไปสำหรับสีขาวซึ่งจะส่งผลให้เกิดการรุกฆาต
อินพุต
อินพุตจะอยู่ใน STDIN - 8 บรรทัดละ 8 ตัวอักษร ความหมายของตัวละครแต่ละตัวมีดังนี้:
K/k - king
Q/q - queen
B/b - bishop
N/n - knight
R/r - rook
P/p - pawn
- - empty square
ตัวอักษรตัวพิมพ์ใหญ่หมายถึงชิ้นส่วนสีขาวและตัวพิมพ์เล็กแสดงถึงสีดำ กระดานจะถูกวางเพื่อให้สีขาวกำลังเล่นขึ้นจากด้านล่างและสีดำกำลังเล่นจากด้านบน
เอาท์พุต
ย้ายสีขาวให้ผลในการรุกฆาตในสัญกรณ์พีชคณิต คุณไม่จำเป็นต้องสังเกตุเมื่อชิ้นส่วนถูกนำมาใช้และคุณไม่จำเป็นต้องกังวลเกี่ยวกับการแก้ปัญหาระหว่างสองชิ้นที่เหมือนกันซึ่งสามารถเคลื่อนไหวได้เหมือนกัน
ตัวอย่างอินพุต
ตัวอย่างที่ 1
การป้อนข้อมูล:
------R-
--p-kp-p
-----n--
--PPK---
p----P-r
B-------
--------
--------
เอาท์พุท:
c6
ตัวอย่างที่ 2
การป้อนข้อมูล:
--b-r--r
ppq-kp-p
-np-pn-B
--------
---N----
--P----P
PP---PP-
R--QRBK-
เอาท์พุท:
Nf5
ตัวอย่างที่ 3
การป้อนข้อมูล:
---r-nr-
-pqb-p-k
pn--p-p-
R-------
--------
-P-B-N-P
-BP--PP-
---QR-K-
เอาท์พุท:
Rh5
คุณสามารถสันนิษฐานได้ว่าวิธีการแก้ปัญหาจะไม่เกี่ยวข้องกับการขว้าง
นี่คือ code-golf - ทางออกที่สั้นที่สุดชนะ
(ตัวอย่างที่นำมาจากmateinone.com - ปริศนา 81, 82 และ 83)