#P14947. Minpopcount

    ID: 14495 远端评测题 1000ms 512MiB 尝试: 0 已通过: 0 难度: 6 上传者: 标签>O2优化广度优先搜索 BFS深度优先搜索 DFS

Minpopcount

Description

Rikka 有一个集合 SS,包含 [0,2k)[0, 2^k) 之内的元素,初始为空。接下来,qq 个事件将会发生,每个属于以下两种之一:

  1. 给出一个整数 x[0,2k)x \in [0, 2^k),把 xx 插入到 SS 中。保证 xx 在此次操作之前不在 SS 中。
  2. 给出一个整数 x[0,2k)x \in [0, 2^k)。对所有 ySy \in S,计算 popcount(xy)\operatorname{popcount}(x \oplus y) 的最小值。保证此次操作之前 SS 非空。

请通过告诉她所有类型 22 事件的正确答案,帮助 Rikka 解决这个问题。

Input Format

第一行,两个整数 qqkk1q51061 \leq q \leq 5\cdot 10^61k201 \leq k \leq 20),表示事件个数和值域的大小。

接下来 qq 行,每行包含两个整数 ooxxo{1,2}o \in \{1, 2\}0x<2k0 \leq x < 2^k),描述一次事件,其中 oo 是事件的类型,xx 是事件的参数。

Output Format

对于每种类型 22 事件,输出一行一个整数表示答案。

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

2
1

12 4
1 5
1 11
2 7
2 12
1 3
2 2
1 6
1 0
2 5
2 11
1 14
2 1

1
2
1
0
0
1

40 5
1 7
2 0
2 18
2 23
2 13
2 5
2 30
1 1
2 9
2 5
2 29
2 10
2 29
2 18
2 29
1 20
2 19
2 4
1 18
2 13
2 14
2 10
2 1
1 15
2 28
2 2
1 0
2 19
1 8
2 8
1 13
2 7
1 31
2 1
1 14
2 6
1 30
2 9
2 20
2 4

3
3
1
2
1
3
1
1
3
3
3
3
3
2
1
2
2
2
0
1
1
1
0
0
0
1
1
0
1

Hint

对于第一个样例,第一个查询发生时有 x=5x = 5S={2,3}S = \{2, 3\},其中 popcount(52)=3\operatorname{popcount}(5 \oplus 2) = 3popcount(53)=2\operatorname{popcount}(5 \oplus 3) = 2,因此查询的答案为 22。第二个查询发生在 x=6x = 6S={2,3,4}S = \{2, 3, 4\} 时,其中 popcount(62)=1\operatorname{popcount}(6 \oplus 2) = 1popcount(63)=2\operatorname{popcount}(6 \oplus 3) = 2popcount(64)=1\operatorname{popcount}(6 \oplus 4) = 1,因此查询的答案为 11