#A5240. 气温网格

气温网格

题目背景

气象站把一片区域划分成 n 行 m 列的方格(第 i 行第 j 列记作 (i, j)),并给出每个格子当前的气温 a_{i,j} 摄氏度。

接下来有 q 次天气过程:第 t 次会让第 x_1 行到第 x_2 行、第 y_1 列到第 y_2 列这个矩形区域里的每个格子气温都上升 v 度;如果 v 是负数,就表示这些格子一起下降 |v| 度。

气象站想知道,所有过程结束后,每个格子的气温是多少。

题目描述

给定 n 行 m 列、每格初值为 a_{i,j} 的方格表,以及 q 次操作。第 t 次操作为 x_1, y_1, x_2, y_2, v,表示把行范围 [x_1, x_2]、列范围 [y_1, y_2] 的子矩形内每格都加上 v。求全部操作结束后每个格子的值。

输入格式

第一行三个整数 n, m, q。

接下来 n 行,每行 m 个整数,表示初始气温。

接下来 q 行,每行五个整数 x_1, y_1, x_2, y_2, v,表示一次操作。

输出格式

共 n 行,每行 m 个整数,依次表示最终每个格子的气温,相邻两个数之间用一个空格分隔。

输入输出样例

2 3 2
1 2 3
4 5 6
1 1 1 2 10
2 2 2 3 -5
11 12 3
4 0 1

样例 1 解释

初始为 1 2 3 / 4 5 6。第一次给第 1 行前两列各 +10,变成 11 12 3 / 4 5 6;第二次给第 2 行后两列各 -5,变成 11 12 3 / 4 0 1。

说明/提示

- 1 ≤ n, m ≤ 1000 - 1 ≤ q ≤ 10^5 - 0 ≤ a_{i,j} ≤ 10^9 - -10^9 ≤ v ≤ 10^9 - 结果可能很大或为负,注意使用合适的数据类型