对于一个给定的数列A,它的差分数列B定义为:
B[ 1 ] = A[ 1 ]
B[ i ] = A[ i ] − A[ i - 1] (2 <= i <= n)
差分数组的性质:
- A数组其实就是B数组的原数组的前缀和数组
- 对原数组A的 [L,R] 区间的值统一加上(减去)x,其实就等于对差分数组 B[L] += x, B[R + 1] −= x
这样一来对区间内的元素赋值操作就可以用差分+前缀和的形式优化
对于一个给定的数列A,它的差分数列B定义为:
B[ 1 ] = A[ 1 ]
B[ i ] = A[ i ] − A[ i - 1] (2 <= i <= n)
差分数组的性质:
这样一来对区间内的元素赋值操作就可以用差分+前缀和的形式优化