#1814. 二维树状数组 3:区间修改,区间查询

二维树状数组 3:区间修改,区间查询

题目描述

这是一道模板题。

给定一个大小为 ¥N \times M$ 的零矩阵,直到输入文件结束,你需要进行若干个操作,操作有两类:

  • 1 a b c d x,表示将左上角为 (a,b)(a,b),右下角为 (c,d)(c,d) 的子矩阵全部加上 xx
  • 2 a b c d,表示询问左上角为 (a,b)(a,b),右下角为 (c,d)(c,d) 为顶点的子矩阵的所有数字之和。

输入格式

输入的第一行有两个正整数 n,mn,m

接下来若干行,每行一个操作,直到文件结束。

输出格式

对于每个 2 操作,输出一个整数,表示对于这个操作的回答。

4 4
1 1 1 3 3 2
1 2 2 4 4 1
2 2 2 3 3
12

数据范围与提示

对于 100%100\% 的数据,1n,m2048,x5001 \le n,m \le 2048,\lvert x \rvert \le 500,操作不超过 2×1052\times 10^5 个,保证运算过程中及最终结果均不超过 6464 位带符号整数类型的表示范围,并且修改与查询的子矩阵存在。