#P985. 【入门】子矩阵求和

    ID: 2545 传统题 1000ms 128MiB 尝试: 3 已通过: 1 难度: 3 上传者: 标签>前缀和差分普及二维数组前缀和前缀和进阶

【入门】子矩阵求和

题目描述

小蓝同学有着很强的计算能力,张老师为了检验小蓝同学的计算能力,写了一个 nnmm 列的矩阵数列。

张老师问了小蓝同学 kk 个问题,每个问题会先告知小蓝同学 44 个数 x1,y1,x2,y2x_1,y_1,x_2,y_2 表示这是矩阵中 22 个点的行列的值,以这两个点为一个矩形的左上角和右下角,可以从矩阵中画出一个子矩阵,张老师请小蓝同学计算出这个子矩阵中所有数的和。

请你编程帮助张老师计算出结果。

输入格式

第一行包含三个整数 n,m,kn,m,k

接下来 nn 行,每行包含 mm 个整数。

接下来 kk 行,每行包含四个整数 x1,y1,x2,y2x_1,y_1,x_2,y_2,表示一组询问。

输出格式

kk 行,每行输出一个询问的结果。

样例

3 5 4
1 1 6 7 4
6 10 4 9 9
2 6 7 3 7
1 2 2 4
2 4 3 5
2 2 3 5
1 3 2 4
37
28
55
26

数据范围

1n,m10001\le n,m\le 1000

1k2000001\le k\le 200000

1x1x2n1\le x_1\le x_2\le n

1y1y2m1\le y_1\le y_2\le m

1000-1000\le 矩阵内元素的值 1000\le 1000

来源

前缀和差分