前缀和---子矩阵的和(模板)

 

 

#include<iostream>
using namespace std;
const int N=1010;
int a[N][N],s[N][N];
int  main()
{
    int n,m,q;
    cin>>n>>m>>q;
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            cin>>a[i][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;
        cin>>x1>>y1>>x2>>y2;
        cout<<s[x2][y2]-s[x2][y1-1]-s[x1-1][y2]+s[x1-1][y1-1]<<endl;
    }
   return 0; 
}

 

posted @ 2024-02-01 15:07  阿飞藏泪  阅读(5)  评论(0编辑  收藏  举报
1 2 3
4