Module: Bor


Problem

6 /10


Truy vấn chuỗi

Problem

Có một tập hợp các chuỗi ban đầu trống. Có ba thao tác khác nhau cần được xử lý trên tập hợp các hàng này:
  • 1 s: Thêm chuỗi đã cho vào tập hợp.
  • 2 k l: Tìm xem có k chuỗi (không nhất thiết phải khác biệt) trong tập hợp có hậu tố chung có độ dài l. Hậu tố này không nhất thiết phải là lớn nhất.
  • 3 i: Xóa chuỗi khỏi tập hợp đã được thêm trong thao tác thứ i (nếu nó chưa bị xóa).
Đầu vào:
Dòng đầu tiên chứa một số nguyên - số thao tác q (1 <= q <= 105) được xử lý.
Tiếp theo, mỗi dòng chứa một mô tả về yêu cầu. Đầu tiên, đó là số 1, 2 hoặc 3, cho biết loại yêu cầu. 
Nếu đây là một truy vấn thuộc loại đầu tiên, thì chuỗi s được đưa ra bên dưới, tổng độ dài của chuỗi này không vượt quá 105.
Nếu đây là truy vấn loại thứ hai, thì hai số nguyên k và l sẽ được cung cấp (1 <= k, l <= 105).
Nếu đây là yêu cầu thuộc loại thứ ba, thì số i sẽ được cung cấp (1 <= i <= số thao tác hiện tại), trong đó i là số thao tác của loại thứ nhất.

Đầu ra:
Đối với mỗi truy vấn thuộc loại thứ hai, hãy in từ "CÓ" trên một dòng riêng, nếu có các dòng cần thiết và "KHÔNG" ngược lại.

Ví dụ:
 
Đầu vào Đầu ra
9
1 ba
1 tài khoản
2 2 2
2 2 3
1 aaaa
1 baba
2 3 2
3 1
2 3 2

KHÔNG

KHÔNG