P12500 「DLESS-1」XOR and OR

题目描述

给定长度为 $n$ 的序列 $a$,支持 $q$ 次操作,每次操作形如以下两种中的一种: - `1 l r x`:对所有 $i\in[l,r]$,将 $a_i$ 异或上 $x$。 - `2 l r`:求区间 $[l,r]$ 所有子区间权值按位或的异或和。

输入格式

输出格式

说明/提示

#### 【样例解释】 以下 $\operatorname{or}$ 表示按位或运算,$\operatorname{xor}$ 表示按位异或运算。 对于第一组样例的第二个询问,区间 $[2,4]$ 所有子区间按位或的异或和等于 $a_2\operatorname{xor}a_3\operatorname{xor}a_4\operatorname{xor}(a_2\operatorname{or}a_3)\operatorname{xor}(a_3\operatorname{or}a_4)\operatorname{xor}(a_2\operatorname{or}a_3\operatorname{or}a_4)$,等于 $4$。 #### 【数据范围】 对于所有数据,保证: - $1\le n,q\le 5\times10^5$ - $0\le a_i,x