100 #CF341D. C95【二维树状数组+差分】二维区间异或修改+区间求异或和Iahub and Xors

C95【二维树状数组+差分】二维区间异或修改+区间求异或和Iahub and Xors

CF341D Iahub and Xors

题目描述

给定一个初始值全为 00n2n^2 矩阵,有 mm 次操作,有以下类型:

  • 1 x1 y1 x2 y2:查询 (x1,y1)(x_1,y_1)(x2,y2)(x_2,y_2) 的区间异或和。
  • 2 x1 y1 x2 y2 w:将 (x1,y1)(x_1,y_1)(x2,y2)(x_2,y_2) 的区间异或上 ww

对于 100% 的数据,。

输入格式

第一行两个整数: n m n \ m ( 1n1000 1 \le n \le 1000 , 1m105 1 \le m \le 10^5 ).

下来 mm 行,每行表示一次操作:1 x1 y1 x2 y22 x1 y1 x2 y2 w

0w2621x1x2n1y1y2n0≤w≤2^{62},1≤x_1≤x_2≤n,1≤y_1≤y_2≤n

输出格式

对于每次查询操作,输入一行一个整数。

输入输出样例 #1

输入 #1

3 5
2 1 1 2 2 1
2 1 3 2 3 2
2 3 1 3 3 3
1 2 2 3 3
1 2 2 3 2

输出 #1

3
2

说明/提示

头三次操作后,举证如下:

1 1 2
1 1 2
3 3 3

第四次操作: 1 xor 2 xor 3 xor 3 = 3.

第五次操作: 1 xor 3 = 2.