请问这道题可以用可持久化线段树写吗?
题目描述
给定 n 个整数构成的序列 a,将对于指定的闭区间 [l,r] 查询其区间内所有满足
l≤i≤r∧L≤ai≤R 的数量。
输入格式
第一行包含两个整数,分别表示序列的长度 n 和查询的个数 m。
第二行包含 n 个整数,第 i 个整数表示序列的第 i 个元素 ai。
接下来 m 行每次有三种操作:
1 l r x:对于区间[l,r]所有i,将ai变为x。
2 l r L R:查询闭区间 [l,r] 内所有满足l≤i≤r∧L≤ai≤R 的数量(如果没有,则输出0)。
我们记 last 表示上一次 2 操作的答案,则每次操作的 x,l,r,L,R 都要异或上 last 才是真实的 x,l,r,L,R。初始 last 为 0。
输出格式
对每个 2 操作,输出一行一个数表示这次查询的答案。
数据规模与约定
- 对于 100% 的数据,满足 1≤n,m≤2×105,∣ai∣,∣L∣,∣R∣≤109,1≤l≤r≤n。
保证在操作过程中,所有∣ai∣≤109