THHV 2025 - DX13 - 10 - Biển số xe
Xem dạng PDFTrong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Một thành phố quản lý danh sách ~n~ biển số xe theo thứ tự đăng ký. Mỗi biển số xe có một kí tự mã thuộc đoạn ['a'..'z'], mỗi ký tự mã tượng trưng cho một loại xe.
Trong quá trình vận hành, có ~m~ thao tác xảy ra, thuộc hai loại:
Cập nhật biển số: Cảnh sát phát hiện sai sót và yêu cầu sửa ký tự mã của biển số tại vị trí thứ ~k~ thành ký tự 'x'.
Kiểm tra đặc biệt: Với đoạn danh sách từ vị trí ~a~ đến ~b~, cần kiểm tra xem dãy biển số trong đoạn này có tạo thành một chuỗi đối xứng (palindrome) hay không.
Yêu cầu: Bạn phải thực hiện toàn bộ ~m~ thao tác, và với mỗi thao tác loại ~(2)~, hãy in ra kết quả.
Input
Dòng đầu: hai số nguyên ~n~ và ~m~ tương ứng là số lượng biển số và số thao tác.
Dòng thứ hai: một chuỗi dài ~n~ ký tự thuộc đoạn ['a'..'z'], là danh sách kí tự mã của các biển số hiện tại.
Tiếp theo là ~m~ dòng, mỗi dòng thuộc một trong hai dạng:
1 ~k~ ~x~ - Cập nhật kí tự mã của biển số ở vị trí ~k~ thành kí tự 'x'.
2 ~a~ ~b~ - Kiểm tra xem dãy kí tự mã từ vị trí ~a~ đến ~b~ có phải đối xứng không.
Output
Với mỗi truy vấn loại ~2~, in ra:
YES nếu đoạn đó đối xứng,
NO nếu không.
Scoring
| Subtask | Điểm | Ràng buộc |
|---|---|---|
| 1 | ~40\%~ | ~n, m \le 2000~ |
| 2 | ~30\%~ | ~n, m \le 2 \cdot 10^5~ và không có thao tác loại ~1~ |
| 3 | ~30\%~ | ~n, m \le 2 \cdot 10^5~ |
Sample Input 1
7 5
aybabtu
2 3 5
1 3 x
2 3 5
1 5 x
2 3 5
Sample Output 1
YES
NO
YES
Bình luận