所谓的差分标记可以用来解决多次区间修改,修改后出现若干查询的情况
举个栗子:
区间修改【l,r】+=c,标记lazy[l]++,lazy[r+1]--;
那么修改完lazy的前缀和就是修改后的样子
比如:现在有三个修改,初始都为0
【2,4】+=1
idx : 1 2 3 4 5
lazy:0 1 0 0 -1
前缀:0 1 1 1 0
【3,4】+=1
idx : 1 2 3 4 5
lazy:0 1 1 0 -2
前缀:0 1 2 2 0
【5,6】+=1
idx : 1 2 3 4 5 6 7
lazy:0 1 1 0 -1 1 -1
前缀:0 1 2 2 1 1 0
知道最后的数组就可以乱搞了
给个例题:
http://codeforces.com/problemset/problem/816/B
http://codeforces.com/contest/948/problem/C