#P1288. 异或集合
异或集合
题目描述
有一个集合,一开始是空的。接下来,依次进行 步操作,每步操作可以是以下三种中的一种:
- 插入操作以
+开头,后接一个数字 ,表示将 加入集合。集合具有重集的性质,可以存放多个相同的整数。 - 删除操作以
-开头,后接一个数字 ,表示将 从集合中删除。如果集合中没有 则忽略这步操作。 - 查询操作以
?开头,后接一个数字 ,搜索集合中全体元素,与给定的整数 异或所得的最大值,输出这个最大值。如果集合中没有任何元素,输出 。
输入格式
- 第一行:单个整数:表示操作数量
- 第二行到第 行:每行一条操作,如上所述。
输出格式
5
+ 1
+ 2
? 3
- 1
? 3
2
1
数据范围
- 的数据,,
- 的数据,,
- 的数据,,
来源
改编自 CF706D Vasiliy's Multiset