标签:单点 es5 for 区间 $0 force 数字 维护 操作
$n \leq 200000$的序列,支持以下$q \leq 4e4$个操作:区间异或$k$;查询区间能异或出多少不同的数。数字$0 \leq a_i \leq 1e9$。
大概是要区间线性基。区间修改用差分。异或也是可以差分的:$b_i=a_i \ \ xor \ \ a_i-1$,则$a_l,a_{l+1},...,a_{r}$的线性基跟$a_l,b_{l+1},...,b_{r}$的线性基一样,询问的时候取出$a_l$和$b_{l+1},...,b_r$即可。线段树维护$b_i$的区间线性基,修改时,我们差分了差分了差分了!!所以单点修改,轻松。取$a_l$的话,区间修改单点查询上个BIT即可。
*Codeforces587E. Duff as a Queen
标签:单点 es5 for 区间 $0 force 数字 维护 操作
原文地址:https://www.cnblogs.com/Blue233333/p/8922009.html