A89714.区间异或查询
普及/提高-
官方
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
给定一个长度为 n 的数组 a1,a2,…,an。接下来有 q 次询问,每次给出一对下标 (l,r)(1≤l≤r≤n),你需要输出区间 [l,r] 上所有元素按位异或的结果,即:
al⊕al+1⊕al+2⊕⋯⊕ar−1⊕ar
注:⊕ 表示按位异或(bitwise XOR)。
输入格式
第一行包含两个整数 n,q。
第二行包含 n 个整数,依次为 a1,a2,…,an。
接下来 q 行,每行包含两个整数 l,r(1≤l≤r≤n)。
输出格式
输出共 q 行,其中第 i 行是第 i 个询问的答案(一个整数)。
输入输出样例
输入#1
5 5 1 2 3 4 5 1 1 1 3 2 4 3 5 1 5
输出#1
1 0 5 2 1
说明/提示
1≤n,q≤2⋅105
1≤ai≤109
1≤l≤r≤n
对于样例:
询问 [1,1]:结果为 1。
询问 [1,3]:1⊕2⊕3=0。
询问 [2,4]:2⊕3⊕4=5。
询问 [3,5]:3⊕4⊕5=2。
询问 [1,5]:1⊕2⊕3⊕4⊕5=1。