Problem
Terdapat satu set rentetan yang pada mulanya kosong. Terdapat tiga operasi berbeza yang perlu dikendalikan pada set baris ini:
- 1 s: Tambahkan rentetan yang diberikan pada set.
- 2 k l: Ketahui jika terdapat rentetan k (tidak semestinya berbeza) dalam set yang mempunyai akhiran sepunya panjang l. Akhiran ini tidak semestinya yang terbesar.
- 3 i: Keluarkan rentetan daripada set yang telah ditambahkan dalam operasi ke-i (jika ia belum dialih keluar).
Input:
Baris pertama mengandungi integer tunggal - bilangan operasi q (1 <= q <= 10
5) untuk diproses.
Seterusnya, setiap baris mengandungi perihalan permintaan. Mula-mula ia ialah nombor 1, 2 atau 3, yang menunjukkan jenis permintaan.
Jika ini adalah pertanyaan jenis pertama, maka rentetan s diberikan di bawah, jumlah panjangnya tidak melebihi 10
5.
Jika ini adalah pertanyaan jenis kedua, maka dua integer k dan l diberikan (1 <= k, l <= 10
5).
Jika ini adalah permintaan jenis ketiga, maka nombor i diberikan (1 <= i <= nombor operasi semasa), di mana i ialah nombor operasi jenis pertama.
Output:
Untuk setiap pertanyaan jenis kedua, cetak perkataan "YA" pada baris yang berasingan, jika baris yang diperlukan wujud dan "TIDAK" sebaliknya.
Contoh:
Input |
Output |
9
1 aba
1 accba
2 2 2
2 2 3
1 aaaa
1 ababa
2 3 2
3 1
2 3 2
| YA
TIDAK
YA
TIDAK |
jadual>