二维树状数组

提高⏱ 2000ms💾 256MB#P8009

题目描述

给定 $n\times m$ 的全零网格与 $q$ 次操作:操作一,把格子 $(x,y)$ 的值加 $v$;操作二,查询子矩阵 $(x_1,y_1)$$(x_2,y_2)$(左上到右下)内所有格子的值之和。请用二维树状数组。

输入格式

第一行三个整数 $n,m,q$;接下来 $q$ 行,每行为 1 x y v2 x1 y1 x2 y2

输出格式

对每个操作二输出一行一个整数。

数据范围

$$1 \le n,m \le 2000,\ 1 \le q \le 2\times 10^5,\ |v| \le 100$$

样例输入 #1
3 3 5
1 2 2 5
2 1 1 3 3
1 1 1 -3
2 1 1 1 1
2 2 2 3 3
2 1 1 3 3
样例输出 #1
5
-3
5
样例输入 #2
2 2 3
1 1 1 7
1 2 2 -7
2 1 1 2 2
样例输出 #2
0