前缀和与差分
结合背景,假如要对区间[l,r]上的元素加上一个值val 原数组是a,现在我们得到了差分数组b,我们可以很轻易地使用差分数组b运算得到a(因为a是b的前缀和数组)从a[r+1]开始,后面的项中包含b[l]与b[r+1],而这两项一个加上了val,一个减去了val,值不变。则数组a满足:a[i] = b[1]+b[2]+...+b[i] = a[i-1] + b[i]由前缀和数组a的性质 则b数组满足:b[i] = a[i] - a[i-1]由于a[i] = a[i-1] + b[i]
原创
2024-03-05 21:54:26 ·
350 阅读 ·
1 评论