序列区间范围查询
时间限制:2秒 内存限制:256M
【题目描述】
给出一个整数序列 \(A[1]..A[n](0≤A[i]≤2×10^5)\),然后有 \(m\) 个查询:\(x\ y\ a\ b\),表示查询 \(A[x]..A[y]\) 中属于区间 \([a,b]\) 的元素个数\((0≤a≤b≤2×10^5)\)。
【输入格式】
第一行包含两个正整数 \(n,m\),\(n\) 表示序列元素数目,\(m\) 表示查询数。
第二行为 \(A[1]..A[n]\)。
接下来的 \(m\) 行,每行是是一条查询命令。为了体现在线操作,实际查询的区间需要对命令中的 \(x,y\) 异或上一次查询结果 \(lastans\),最开始 \(lastans=0\)。
【输出格式】
针对每条指令,输出查询结果。
【输入输出样例】
Input
8 2
2 5 1 8 3 5 4 7
2 6 3 6
2 6 1 5
Output
3
4
【数据限制】
对于 \(100\%\) 的数据,\(0<n,m≤200000\)
【来源】
Mr.he