Truy vấn ký tự phân biệt
Đề bài
Mô tả
Cho một xâu gồm các chữ cái Latin thường và truy vấn trên xâu này.
Xâu con là xâu .
Có hai loại truy vấn:
- — thay ký tự tại vị trí bằng ký tự (gán ), với là một chữ cái Latin thường.
- — đếm số ký tự phân biệt trong xâu con .
Dữ liệu vào
- Dòng đầu chứa xâu gồm các chữ cái Latin thường.
- Dòng thứ hai chứa số nguyên — số truy vấn.
- dòng tiếp theo, mỗi dòng chứa một truy vấn theo một trong hai định dạng nêu trên.
Dữ liệu ra
Với mỗi truy vấn loại , in ra trên một dòng số lượng ký tự phân biệt trong xâu con tương ứng.
Ràng buộc
- Với truy vấn loại : .
- Với truy vấn loại : .
- Có ít nhất một truy vấn loại .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| abacaba 5 2 1 4 1 4 b 1 5 b 2 4 6 2 1 7 |
3 1 2 |
Xâu con = "abac" có 3 ký tự phân biệt {a, b, c}. Sau hai phép gán, xâu thành "abababa". = "bab" có 1 ký tự phân biệt. = "abababa" có 2 ký tự phân biệt. |
| dfcbbcfeeedbaea 15 1 6 e 1 4 b 2 6 14 1 7 b 1 12 c 2 6 8 2 1 6 1 7 c 1 2 f 1 10 a 2 7 9 1 10 a 1 14 b 1 1 f 2 1 11 |
5 2 5 2 6 |
Các truy vấn loại 2 được trả lời lần lượt sau khi áp dụng các phép cập nhật trước đó. |
Bình luận