#3156. Range Xor Query
0
Range Xor Query
Range Xor Query
题目描述
我们有一个长度为 的整数序列 .
你将对该序列处理 个查询。在第 个查询中,给定数值 、 和 ,执行以下操作:
如果 ,将 替换为 。 如果 ,输出 $A_{X_i} \oplus A_{X_i + 1} \oplus A_{X_i + 2} \oplus \dots \oplus A_{Y_i}$。
这里, 表示 和 的按位异或。
什么是按位异或?
整数 和 的按位异或 定义如下:
当 用二进制表示时,位于 位()的数字为 当且仅当 或 (但不是两者)在该 位上为 ,否则为 。
例如,。(用二进制表示:。)
输入格式
Input is given from Standard Input in the following format: $A_1 \hspace{7pt} A_2 \hspace{7pt} A_3 \hspace{5pt} \dots \hspace{5pt} A_N$
输出格式
对于每个按接收顺序出现且满足 的查询,在单独的一行中输出对应的结果。
3 4
1 2 3
2 1 3
2 2 3
1 2 3
2 2 3
0
1
2
10 10
0 5 3 4 7 0 0 0 1 0
1 10 7
2 8 9
2 3 6
2 1 6
2 1 10
1 9 4
1 6 1
1 6 3
1 1 7
2 3 5
1
0
5
3
0
提示
is or .
If , then and .
If , then .
All values in input are integers.在第一个查询中,我们输出 .
在第二个查询中,我们输出 .
在第三个查询中,我们将 替换为 .
在第四个查询中,我们输出 .
标签: AtCoder|abc185F
来源
AtCoder|abc185F