Codeforces242E XOR on Segment
题意:
有一个长度为n的数列,给出两种操作:
1.对区间(l,r)求和并输出。
2.对区间(l,r)内的所有数都修改为原来的数异或x后得到的值。
分析:
线段树,延迟标记,区间求和,但维护不能直接维护求和的值,因为有异或操作,所以将数拆成二进制,记录每一位出现的次数,每异或一次,就相当于将区间和各二进制位0变1、1变0,求和计算一下即可。
#include
#include
#include
#include
#include
#include
#include