#YHW906. 区间异或
区间异或
题目描述
给定一个长度为 的整数数组 ,初始时所有元素都为 。现在有 次操作,操作分为两种类型:
- 区间异或修改:给定三个整数 、 和 ,将数组中从第 个元素到第 个元素(包括第 和第 个元素)的所有元素都异或上 。
- 区间异或和查询:给定两个整数 和 ,查询数组中从第 个元素到第 个元素(包括第 和第 个元素)的所有元素的异或和。
输入格式
第一行包含两个整数 和 (),分别表示数组的长度和操作的次数。 接下来 行,每行表示一次操作。如果该行的第一个整数为 ,则表示区间异或修改操作,接下来有三个整数 、 和 (,);如果该行的第一个整数为 ,则表示区间异或和查询操作,接下来有两个整数 和 ()。
输出格式
对于每次区间异或和查询操作,输出一个整数,表示查询结果。
样例输入
5 4
1 2 4 3
2 1 5
1 3 5 2
2 2 4
样例输出
3
3
数据范围
- 对于 的数据:。
- 对于 的数据:。
- 对于 的数据:,。
相关
在下列比赛中: