Kỳ vọng của các kỳ thủ
Đề bài
Mô tả
Một giải đấu cờ vua có kỳ thủ tham gia. Mỗi kỳ thủ đấu đúng một ván với mỗi kỳ thủ còn lại. Mỗi ván đấu kết thúc với một trong hai khả năng: một người thắng và người kia thua, hoặc hai người hoà.
Mỗi kỳ thủ có một mong muốn riêng, thuộc một trong hai loại:
- Kỳ thủ loại 1 muốn không thua ván nào (kết thúc giải với 0 ván thua).
- Kỳ thủ loại 2 muốn thắng ít nhất một ván.
Hãy xác định xem có tồn tại kết quả cho tất cả các ván đấu sao cho mọi kỳ thủ đều đạt được mong muốn của mình hay không. Nếu có nhiều cách, in ra một cách bất kỳ.
Dữ liệu vào
- Dòng đầu chứa số nguyên là số lượng bộ dữ liệu.
- Với mỗi bộ dữ liệu:
- Dòng đầu chứa số nguyên là số kỳ thủ.
- Dòng thứ hai chứa xâu độ dài gồm các ký tự trong . Nếu thì kỳ thủ thứ thuộc loại 1, ngược lại thuộc loại 2.
Dữ liệu ra
Với mỗi bộ dữ liệu:
- Nếu không thể thoả mãn mọi kỳ thủ, in ra NO.
- Ngược lại, in ra YES, rồi in ra ma trận kích thước trên dòng tiếp theo. Phần tử ở dòng , cột bằng:
+nếu kỳ thủ thắng kỳ thủ ;-nếu kỳ thủ thua kỳ thủ ;=nếu ván giữa và hoà;Xnếu .
Ma trận phải nhất quán: nếu ô là + thì ô phải là - và ngược lại; nếu là = thì cũng là =.
Ràng buộc
- , mỗi
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 3 3 111 2 21 4 2122 |
YES X== =X= ==X NO YES X=+- =X== -=X+ +=-X |
Bộ 1: cả ba đều loại 1, cho hoà tất cả thì không ai thua. Bộ 2: chỉ có một kỳ thủ loại 2, người đó không thể thắng ai (thắng kỳ thủ loại 1 sẽ khiến người đó thua), nên vô nghiệm. Bộ 3: ba kỳ thủ loại 2 (vị trí 1, 3, 4) thắng vòng tròn cho nhau, kỳ thủ loại 1 hoà tất cả. |
| 3 3 222 3 122 3 112 |
YES X+- -X+ +-X NO NO |
Bộ 1: ba kỳ thủ loại 2 thắng vòng tròn, mỗi người thắng đúng một ván. Bộ 2 và 3: nhóm kỳ thủ loại 2 chỉ có 2 (hoặc 1) người, không đủ để mỗi người đều thắng ít nhất một ván. |
Bình luận