#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 - 结果可能很大或为负,注意使用合适的数据类型