题目 1703

量子纠缠

查看题解 ↗GitHub ↗如何评测
题号
1703
时间限制
1000 ms
内存限制
512 MB
标签
字符串
来源
信息学奥赛一本通 · 高手训练篇·二、字符串算法(高手训练)

【题目描述】

J君正在研究量子信息的纠缠。 具体来说,J君有一个初始为空的信息集。 她会进行mm次操作,有时,她会向信息集内加入一个长度不超过L的数字串(一个数字串为一个仅由00到99组成的非空字符串),有时她会给出一个数字串,询问这个数字串是否包含在她的信息集中,有时她会选取两个长度不超过LL的数字串,使它们在信息集内互相纠缠。 两个数字串AA和BB互相纠缠表示,对于信息集中的任意串A+CA+C,需满足B+CB+C也在信息集中,对于信息集中的任意串B+DB+D,需满足A+DA+D也在信息集中(其中++代表字符串顺序连接,C、DC、D可能是空串),因此一次纠缠操作可能导致若干个数字串 (可能为无穷多个) 被加入信息集中。 由于两个数字串的纠缠是一种状态,在纠缠后的任何时刻都需满足以上性质,因此第一次纠缠操作之后的任何添加操作都可能导致大于11个(可能为无穷多个)数字串被加入信息集。 你需要做的就是回答 J 君的所有询问。

【输入】

第一行包含一个正整数mm,代表操作数。 接下来mm行,每行可能有以下形式: “1  s1\;s”表示将数字串ss加入信息集中。 “2  s2\;s”表示询问数字串ss是否在信息集中。 “3  a  b3\;a\;b”表示使数字串aa和bb互相纠缠。

【输出】

对于每一个2操作,如果询问串不在集合中,请输出一行一个整数00,否则输出一行一个整数11。

【输入样例】

文本
11
1 123
2 123
2 0
3 12 13
1 124
2 133
2 134
2 13
3 1 11
2 111
2 11111111111111111111111124

【输出样例】

文本
1
0
1
1
0	
0
1	

【提示】

【数据规模和约定】

测试点 m≤ c≤ 其它
1 10510^5 2050 不含操作3
2 所有串中只会出现字符0
3 500 200 信息集中元素有限
4 500
5
6 10510^5 2050
7 500 500 N/A
8 2000 2050
9 10510^5 保证所有1操作和所有3操作都在2操作前面
10 N/A

100%的数据满足m≤105,c≤2050,S≤8×106,L≤50,P≡m( mod 10)m≤10^5,c≤2050,S≤8×10^6,L≤50,P≡m(\bmod 10)。 其中cc代表操作11和操作33次数之和,SS代表询问字符串的总长度。

数据下载

题目 1703 的公开数据

正在读取文件列表…

常用命令

题目 1703 的 ROJ 命令

以下命令默认使用全局安装的 ROJ Skill,请在终端中直接执行;如果修改过 AGENT_HOME,请将命令中的 ~/.agents 替换为对应目录。