Ba dãy con rời nhau
Đề bài
Mô tả
Cho một xâu gồm chữ cái latin in thường, gọi là văn bản.
Ta theo dõi thêm ba xâu , , ; ban đầu cả ba đều rỗng.
Bộ ba xâu này được gọi là tương thích với văn bản nếu có thể tô màu một số ký tự của bằng ba màu , , , mỗi ký tự được tô nhiều nhất một màu, sao cho với mọi , xâu thu được từ bằng cách chỉ giữ lại các ký tự mang màu (giữ nguyên thứ tự) đúng bằng . Nói cách khác, , , phải là ba dãy con của đôi một không dùng chung vị trí nào.
Có thao tác thay đổi, mỗi thao tác thuộc một trong hai dạng:
+ i c: thêm ký tự vào cuối xâu ;- i: xoá ký tự cuối của xâu .
Sau mỗi thao tác, hãy cho biết ba xâu hiện tại có tương thích với văn bản hay không.
Dữ liệu vào
- Dòng đầu tiên chứa hai số nguyên và .
- Dòng thứ hai chứa xâu gồm chữ cái latin in thường.
- dòng tiếp theo, mỗi dòng mô tả một thao tác theo đúng một trong hai dạng
+ i choặc- i.
Dữ liệu ra
Gồm dòng. Dòng thứ ghi YES nếu sau thao tác thứ ba xâu tương thích với văn bản, ngược lại ghi NO.
Ràng buộc
- và là một chữ cái latin in thường
- Thao tác
- ichỉ xuất hiện khi đang khác rỗng - Tại mọi thời điểm, độ dài mỗi xâu không vượt quá
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 6 8 abbaab + 1 a + 2 a + 3 a + 1 b + 2 b + 3 b - 1 + 2 z |
YES YES YES YES YES NO YES NO |
Sau thao tác thứ ta có , , : năm ký tự này vừa đủ nằm rời nhau trong abbaab. Thao tác thứ làm ; ba xâu cần đúng ba chữ a và ba chữ b, vừa bằng số lượng có trong abbaab nên bắt buộc phải dùng hết cả sáu vị trí. Ba chữ a nằm ở vị trí và ba chữ b nằm ở vị trí , mà hai chữ a ở vị trí và chỉ còn đúng chữ b ở vị trí đứng sau, nên không ghép được ba cặp rời nhau. Thao tác thứ thêm chữ z không hề xuất hiện trong văn bản. |
| 6 8 abdabc + 1 a + 1 d + 2 b + 2 c + 3 a + 3 b + 1 c - 2 |
YES YES YES YES YES YES NO YES |
Sau thao tác thứ ta có , , . Đánh số các vị trí của abdabc từ đến : tô màu cho các vị trí , màu cho các vị trí , màu cho các vị trí . Thao tác thứ làm , khi đó cả ba xâu cần tổng cộng bảy ký tự trong khi văn bản chỉ dài sáu. |
Bình luận