#CSES1650. 区间异或和查询

区间异或和查询

题目背景

翻译自 CSES-1650 题。

题目描述

给定一个包含 nn 个整数的数组,你的任务是处理 qq 个查询,每个查询询问区间 [a,b][a,b] 内的异或和。

输入格式

第一行包含两个整数 nnqq:分别表示数组中的值的数量和查询的数量。

第二行包含 nn 个整数 x1,x2,,xnx_1,x_2,…,x_n:表示数组中的值。

接下来有 qq 行,每行包含两个整数 aabb:表示查询区间 [a,b][a,b],要求计算该区间内的异或和。

输出格式

对于每个查询,输出区间 [a,b][a,b] 内所有元素的异或和。

样例

8 4
3 2 4 5 1 1 5 3
2 4
5 6
1 8
3 3
3
0
6
4

说明/提示

1n,q21051 \leq n,q \leq 2 \cdot 10^5

1xi1091 \leq x_i \leq 10^9

1a,bn1 \leq a, b \leq n