Chặn nước thua (cờ caro)
Xem dạng PDF📖 Bài giảng & lời giải: đây là Bài tập 3 trong bài giảng Thuật toán qua trò chơi 5: Cờ caro trên blog Lập trình thuật toán – có lý thuyết, mô phỏng từng bước, gợi ý và code C++ / Python.
⚠️ Lưu ý: hãy đảm bảo em đã thật sự cố gắng tự làm bài trước, rồi mới xem gợi ý và lời giải nhé!
🎓 Khóa học Lập trình Thuật toán thi đấu của thầy Nguyễn Việt Nam Sơn – 111 buổi video, kèm cặp cá nhân, luyện thi chuyên Tin · HSG Tin học · Tin học trẻ · đội tuyển quốc gia · Olympic/ICPC. 👉 Xem chi tiết khóa học · Thành tích học viên
📞 Đăng ký học: Zalo 0767 666 702 · Facebook Nguyễn Việt Nam Sơn · 🌐 laptrinhthuattoan.blogspot.com
Cho bàn cờ caro $n \times m$ (ký tự X, O, .), số nguyên $k$ và ký tự $p$ (X hoặc O) là người sắp đi; đối thủ của $p$ là người còn lại. Một người thắng nếu có ít nhất $k$ quân của mình liên tiếp theo hàng ngang, cột dọc hoặc một trong hai đường chéo. Hiện tại chưa ai thắng.
Một ô trống được gọi là ô thắng ngay của một người nếu người đó đánh vào ô này thì thắng. Hãy quyết định nước đi cho $p$ theo thứ tự ưu tiên sau:
- Nếu $p$ có ô thắng ngay: in
THANG r c, với $(r, c)$ là ô thắng ngay của $p$ có hàng nhỏ nhất, nếu cùng hàng thì cột nhỏ nhất. - Ngược lại, gọi $T$ là số ô thắng ngay của đối thủ. Nếu $T = 0$ in
AN TOAN; nếu $T = 1$ inCHAN r cvới $(r, c)$ là ô đó; nếu $T \ge 2$ inTHUA.
Hàng, cột đánh số từ 1.
Dữ liệu vào
- Dòng 1: ba số nguyên $n, m, k$ ($1 \le n, m \le 100$, $2 \le k \le 100$).
- $n$ dòng tiếp theo, mỗi dòng là một xâu độ dài $m$ chỉ gồm
X,O,.. - Dòng cuối: ký tự $p$ (
XhoặcO).
Kết quả
In ra một dòng theo đúng một trong các dạng THANG r c, AN TOAN, CHAN r c, THUA.
Sample Input
5 5 4
.....
.OOO.
..X..
.X.X.
.....
X
Sample Output
THUA
Bình luận