#include <iostream>
#include <stdio.h>
#include <string>
using namespace std;
const int N=10010;
int n,m,q;
int a[N][N],s[N][N];
int main()
{
scanf("%d%d%d",&n,&m,&q);
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
scanf("%d",&a[i][j]);
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
s[i][j]=s[i-1][j]+s[i][j-1]-s[i-1][j-1]+a[i][j];//求前缀和
while(q--)
{
int x1,y1,x2,y2;
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
printf("%d\n",s[x2][y2]-s[x1-1][y2]-s[x2][y1-1]+s[x1-1][y1-1]);//算子矩阵的和
}
return 0;
}
相关文章
- 03-11Easy Equation【差分+前缀和】
- 03-11cajviewer逆向分析-HN文件格式分析和010editor模板开发
- 03-11Luogu P3149 排序(树状数组、前缀和)
- 03-11树上前缀和学习入门笔记
- 03-11(模板)[USACO5.1]圈奶牛Fencing the Cows (二维凸包)
- 03-1110-2 力扣数组题,使用前缀和
- 03-11BZOJ4245: [ONTAK2015]OR-XOR(前缀和)
- 03-11洛谷 P3017 [USACO11MAR]Brownie Slicing G(二分,前缀和)
- 03-11sizeof和strlen在一维数组,二维数组中的应用
- 03-11c – 模板,decltype和非classtypes