Máy giật điện
Đề bài
Mô tả
Ban giám khảo chọn ra một chữ cái tiếng Anh in thường bí mật mà người chơi không biết. Người chơi thực hiện hành động lần lượt. Mỗi khi người chơi đọc một từ có chứa chữ cái bí mật, hoặc mỗi khi người chơi đoán sai chữ cái bí mật, người chơi bị điện giật một lần.
Có ba loại hành động:
. w— người chơi đọc từ và không bị giật (nghĩa là không chứa chữ cái bí mật).! w— người chơi đọc từ và bị giật (nghĩa là có chứa chữ cái bí mật).? c— người chơi đoán chữ cái bí mật là . Nếu đoán sai thì bị giật.
Một cú giật được gọi là thừa nếu nó xảy ra sau thời điểm mà chữ cái bí mật đã có thể được xác định duy nhất từ các thông tin trước đó. Nói cách khác, nếu tại thời điểm ngay trước một hành động gây giật mà tập các chữ cái còn khả dĩ chỉ còn đúng một chữ, thì cú giật đó là thừa.
Hãy đếm số cú giật thừa mà người chơi đã phải chịu.
Dữ liệu đảm bảo hành động cuối cùng luôn là một lần đoán, và đó là lần đoán đúng; trước lần đoán cuối này người chơi chưa bao giờ đoán đúng. Dữ liệu cũng đảm bảo tính nhất quán: từ bị giật thì chứa chữ bí mật, từ không bị giật thì không chứa chữ bí mật.
Dữ liệu vào
- Dòng đầu chứa số nguyên là số hành động.
- dòng tiếp theo, mỗi dòng mô tả một hành động theo một trong ba định dạng ở trên. Ký hiệu loại (
.,!,?) cách phần còn lại bởi đúng một dấu cách. Với hành động loại 3, phần sau dấu cách là đúng một chữ cái in thường.
Mọi từ chỉ gồm các chữ cái tiếng Anh in thường.
Dữ liệu ra
- In ra một số nguyên duy nhất: số cú giật thừa.
Ràng buộc
- .
- Tổng độ dài tất cả các từ không vượt quá .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 ! abc . ad . b ! cd ? c |
1 | Sau hành động 1, chữ bí mật thuộc {a, b, c}. Sau . ad loại a, còn {b, c}. Sau . b loại b, còn duy nhất {c}: đã xác định. Hành động ! cd gây một cú giật thừa. Cuối cùng đoán c đúng. |
| 8 ! hello ! codeforces ? c . o ? d ? h . l ? e |
2 | Sau hai cú giật đầu, chữ bí mật thuộc {e, o}. Sau . o chỉ còn {e}: đã xác định. Hai lần đoán sai ? d và ? h sau đó là hai cú giật thừa. |
| 7 ! ababahalamaha ? a ? b ? a ? b ? a ? h |
0 | Chữ bí mật chỉ được xác định duy nhất đúng vào lúc đoán cuối, nên không có cú giật thừa nào. |
Bình luận