Borya và Hanabi
Đề bài
Mô tả
Trò chơi Hanabi (phiên bản đơn giản hoá) có loại lá bài, ứng với màu khác nhau (kí hiệu R, G, B, Y, W) và giá trị khác nhau (các chữ số từ đến ). Mỗi loại bài được mô tả bởi đúng hai kí tự: kí tự đầu là màu, kí tự sau là giá trị (ví dụ G3 là lá bài màu xanh lá có giá trị ).
Borya đang cầm lá bài trên tay. Điểm đặc biệt của trò chơi là Borya không nhìn thấy các lá bài của mình, trong khi các người chơi khác thì thấy hết. Borya biết chính xác mình đang có bao nhiêu lá của mỗi loại trong loại (tức là biết đa-tập các lá bài), nhưng không biết thứ tự sắp xếp của chúng.
Các người chơi khác có thể giúp Borya bằng cách đưa ra các gợi ý. Có hai dạng gợi ý:
- Gợi ý màu: một người chơi gọi tên một màu rồi chỉ vào tất cả các lá bài trên tay Borya có màu đó.
- Gợi ý giá trị: một người chơi gọi tên một giá trị rồi chỉ vào tất cả các lá bài trên tay Borya có giá trị đó.
Mục tiêu là sau một loạt gợi ý, Borya phải biết chắc chắn màu và giá trị của mỗi lá bài mà mình đang cầm. Hãy tìm số gợi ý ít nhất cần đưa ra để đạt mục tiêu này.
Dữ liệu vào
- Dòng đầu chứa số nguyên () — số lá bài Borya đang cầm.
- Dòng thứ hai chứa mô tả lá bài, mỗi mô tả gồm đúng kí tự (màu thuộc {R, G, B, Y, W} và giá trị thuộc {1, 2, 3, 4, 5}), cách nhau bởi dấu cách. Các mô tả có thể trùng nhau.
Dữ liệu ra
In ra một số nguyên duy nhất — số gợi ý ít nhất cần đưa ra.
Ràng buộc
- .
- Mỗi lá bài có dạng với màu thuộc và giá trị thuộc .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 B1 Y1 W1 G1 R1 |
4 | Năm lá đều có giá trị nhưng khác màu. Cần gợi ý màu (chỉ ra trong màu) để xác định từng lá; lá còn lại được suy ra. |
| 4 G4 R4 R3 B3 |
2 | Một cách tối ưu: gợi ý giá trị và gợi ý màu R. Khi đó G4 là lá duy nhất "có giá trị , không phải màu R", các lá còn lại cũng được phân biệt. |
| 2 G3 G3 |
0 | Borya đã biết cả hai lá đều là G3 nên không cần gợi ý nào. |
Bình luận