#658. 子矩阵求和

子矩阵求和

问题描述

小 A 同学有着很强的计算能力,张老师为了检验小A 同学的计算能力,写了一个 n 行 m 列的矩阵数列。 张老师问了小 A 同学 k 个问题,每个问题会先告知小 A 同学 4 个数 x1,y1,x2,y2 表示这是矩阵中 2 个点的行和列的值,以这两个点为一个矩形的左上角和右下角,可以从矩阵中画出一个子矩阵,张老师请小 A 同学计算出这个子矩阵中所有数的和。 请你编程帮助张老师计算出结果。

Format

Input

第一行包含三个整数 n,m,k 。 接下来 n 行,每行包含 m 个整数。 接下来 k 行,每行包含四个整数 x1,y1,x2,y2 ,表示一组询问。

Output

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

Samples

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

Limitation

数据范围: 1≤n,m≤1000。 1≤k≤200000。 1≤x1≤x2≤n 1≤y1≤y2≤m 矩阵内元素的值均在 [−1000,1000][−1000,1000] 的范围内。