2021-01-07

一维数组前缀和

//定义全局变量
const int MAXN=1e6+4;
int nums[MAXN];
int sums[MAXN];

int main()
{
    int n;
    int i;
    for(i=1;i<=n;i++)
    {
        cin>>nums[i];
        sums[i]=sums[i-1]+nums[i];
    }
    for(i=1;i<=n;i++)
    {
    cout<<sums[i]<<" ";
    }
    
    return 0;
}

二维数组前缀和

const int MAXN=1e3+2;
long long sums[MAXN][MAXN];
int nums[MAXN][MAXN];
int main()
{
    int n;
    int i,j;
        for(i=0;i<n;i++){
          for(j=0;j<n;j++){
           cin>>nums[i][j];
           sums[i][j]=sums[i-1][j]+sums[i][j-1]-sums[i-1][j-1]+nums[i][j];
         }
       }
    for(i=1;i<=n;i++){
      for(j=1;i<=n;j++){
        cout<<sums[i][j]<<" ";
        }  
     } 
     return 0;
 }
上一篇:力扣刷题之区域和检索 - 数组不可变


下一篇:element table只计算最后一列数据总和