您需要动态地维护一个可重集合 M,并且提供以下操作:
本题强制在线,保证所有操作合法(操作 2 保证存在至少一个 x,操作 4,5,6 保证存在答案)。
第一行两个正整数 n,m,表示初始数的个数和操作的个数。
第二行 n 个整数 a1,a2,a3,…,an,表示初始的数。
接下来 m 行,每行有两个整数 opt 和 x′,opt 表示操作的序号(1≤opt≤6),x′ 表示加密后的操作数。
我们记 last 表示上一次 3,4,5,6 操作的答案,则每次操作的 x′ 都要异或上 last 才是真实的 x。初始 last 为 0。
输出一行一个整数,表示所有 3,4,5,6 操作的答案的异或和。
6 7 1 1 4 5 1 4 2 1 1 9 4 1 5 8 3 13 6 7 1 4
6
样例加密前为:
plain16 7 21 1 4 5 1 4 32 1 41 9 54 1 65 9 73 8 86 1 91 0
对于 100% 的数据,1≤n≤105,1≤m≤106,0≤ai,x<230。
本题输入数据较大,请使用较快的读入方式。
upd 2022.7.22:新增加 9 组 Hack 数据。