「HMOI R1」不知道是啥的垃圾题

题目背景

由于这是崩坏 3 round,所以这里应该有一个关于崩坏三的背景。然而 fz 不玩崩坏 3,而且他实在是太屑了,所以这题就变成了一道裸题。

题目描述

要求维护一个可重集,支持三种操作: 1. 插入一个自然数对; 1. 删除一个自然数对,保证这个数对之前在集合中; 1. 给定一个自然数对 $(x,y)$,问集合中有多少个数对 $(a,b)$ 满足 $x\operatorname{xor}a>y\operatorname{xor}b$,其中 $\operatorname{xor}$ 表示按位异或运算。 本题中所有“数对”均指有序数对。

输入输出格式

输入格式


第一行一个自然数 $M$ 代表操作数。 接下来 $M$ 行,每行一个操作,格式如下: - `1 x y` 表示插入自然数对 $(x,y)$; - `2 x y` 表示删除自然数对 $(x,y)$,保证此时 $(x,y)$ 在集合中至少出现了一次; - `3 x y` 表示查询自然数对 $(x,y)$。

输出格式


共 $M$ 行,每个询问输出一行一个自然数,表示询问的答案。

输入输出样例

输入样例 #1

6
3 1 2
1 3 2
1 4 5
3 6 2
2 3 2
3 6 2

输出样例 #1

0
1
0

说明

对于样例,第一次查询时集合里没有任何数对,所以答案为 $0$。 第二次查询时,集合为 $\{(3,2),(4,5)\}$,$6\operatorname{xor}3=5>0=2\operatorname{xor}2$,$6\operatorname{xor}4=2<7=2\operatorname{xor}5$,故满足条件的数对只有 $(3,2)$ 一个,答案为 $1$。 第三次询问时,集合为 $\{(4,5)\}$,没有满足条件的数对,答案为 $0$。 ------------ 对于所有数据: - $0 \le M \le 2 \times 10^5$; - $0 \le x, y \le 10^{18}$。 -------- **本题采用捆绑测试。** | No. | Constraints | Score | | ---- | --------------------------- | ----- | | $1$ | $M \le 2000$ | $10$ | | $2$ | $x, y < 8$ | $20$ | | $3$ | $x, y \le M$ | $30$ | | $4$ | No further constraints | $40$ | ------- - Idea: FZzzz - Solution: FZzzz - Code: FZzzz - Data: FZzzz