如题,我的思路是把二维差分理解为许多一维差分的一个拼接。首先构建一个二维数组a存储所有的数字,然后再构建一个二维数组dp记录下每一行相邻两个数字之间的差值
(dp[i][j]=a[i][j]-a[i][j-1]),对于每一行的第一个数,我们直接用dp记录(dp[i][0]=a[i][0])
然后改变dp,最后前缀和求出a。
最后就是x,y要小心了,x代表行,y代表列!
如题,我的思路是把二维差分理解为许多一维差分的一个拼接。首先构建一个二维数组a存储所有的数字,然后再构建一个二维数组dp记录下每一行相邻两个数字之间的差值
(dp[i][j]=a[i][j]-a[i][j-1]),对于每一行的第一个数,我们直接用dp记录(dp[i][0]=a[i][0])
然后改变dp,最后前缀和求出a。
最后就是x,y要小心了,x代表行,y代表列!