Problem
有一组最初为空的字符串。在这组行上需要处理三种不同的操作:
- 1 s:将给定的字符串添加到集合中。
- 2 k l:找出集合中是否有 k 个字符串(不一定不同)具有长度为 l 的公共后缀。此后缀不必是最大的。
- 3 i:从第 i 个操作中添加的集合中删除字符串(如果尚未删除)。
输入:
第一行包含一个整数——要处理的操作数 q (1 <= q <= 10
5)。
接下来,每一行都包含对请求的描述。首先是数字 1、2 或 3,表示请求的类型。
如果这是第一种查询,则下面给出字符串s,总长度不超过10
5。
如果这是第二种类型的查询,则给出两个整数 k 和 l (1 <= k, l <= 10
5)。
如果这是第三类请求,则给出编号i(1 <= i <=当前操作的编号),其中i为第一类操作的编号。
输出:
对于第二种类型的每个查询,如果存在必要的行,则在单独的行上打印单词“YES”,然后打印“NO”否则。
示例:
<正文>
输入 |
输出 |
9
1 阿巴
1个阿克巴
2 2 2
2 2 3
1 啊啊啊
1 阿巴巴
2 3 2
3 1
2 3 2
| 是
没有
是的
没有 |
表>