代码
#include#include using namespace std; int a[5005][5005]={0}; int b[1005][10]={0}; int main() { int m,n,q; int i2,i,j,x,x2,y,y2,sum=0; cin >> m >> n;//第一行2个整数n, m,中间用空格分割,分别对应数组的行数n、列数m(1 <= m,n <= 100) for(i=1;i<=m;i++)//接下来n行,每行m个整数表示矩阵的内容a[i,j] 。 for(j=1;j<=n;j++) cin >> a[i][j]; cin >>q; for(i=1;i<=q;i++)//一个数q,对应查询的数量。(1 <= q <= 1000) 接下来q行,每行4个整数,对应矩阵的上下左右边界 { for(j=1;j<=4;j++) cin >>b[i][j]; } for(i2=1;i2<=q;i2++) { y=b[i2][1]; y2=b[i2][2]; x=b[i2][3]; x2=b[i2][4];//写出对应边界 for(i=y;i<=y2;i++) for(j=x;j<=x2;j++) { sum+=a[i][j];//询问的求和结果 } cout <



