/*
差分数组:快速实现区间增减
*/ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
a[11]={ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
s[11]={ 0,-1, 1, 3, 4, 1, 1,-2, 1, 1, 1};
a[11]={ 0,-1, 0, 3, 7, 8, 9, 7, 8, 9, 10};
[a,b] +x s[a]+=x s[b+1]-=x
s[i]=a[i]-a[i-1]
a[i]=a[i-1]+s[i]
[1,5] -2 { 0,-1, 0, 1, 2, 3, 6, 7, 8, 9, 10};
{ 0,-1, 1, 1, 1, 1, 3, 1, 1, 1, 1};
[4,6] +3 { 0,-1, 0, 1, 5, 6, 9, 7, 8, 9, 10};
[3,5] +2 { 0,-1, 0, 3, 7, 8, 9, 7, 8, 9, 10};
C++ 差分数组
最新推荐文章于 2024-06-15 16:46:40 发布