差分
差分,是一种和前缀和相对的策略,可以当做是求和的逆运算。这种策略是,令
简单性质:
- 的值是 的前缀和,即
- 计算 的前缀和 sum=
它可以维护多次对序列的一个区间加上一个数,并在最后询问某一位的数或是多次询问某一位的数( 修改操作一定要在查询操作之前 )
譬如使[l,r]中的每个数加上一个k,就是
最后做一遍前缀和就可恢复原数组。
参考
- 前缀和 & 差分 - OI Wiki
- P3397 地毯 - 洛谷 : 这题是2维的,但也能用一维的差分解决
差分,是一种和前缀和相对的策略,可以当做是求和的逆运算。这种策略是,令
简单性质:
它可以维护多次对序列的一个区间加上一个数,并在最后询问某一位的数或是多次询问某一位的数( 修改操作一定要在查询操作之前 )
譬如使[l,r]中的每个数加上一个k,就是
最后做一遍前缀和就可恢复原数组。