二位前缀和
存储
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]+g[i][j];
}
}
求 左上角是(x1,x2),右下角是(x2,y2)的方阵的和 eg:;(3,3),(3,3)不是0 ,是 g[3][3];
int mer(int x1,int y1,int x2,int y2)
{
return s[x2][y2]+s[x1-1][y1-1]-s[x1-1][y2]-s[x2][y1-1];
}
浙公网安备 33010602011771号