上次的动态开点线段树咕了一半。。
这次争取不咕(自己都不信
现在总结一下树上差分。
首先拿到题目你得想到树上差分(真的困难
然后有两种类型
第一种是点上的差分 ++s[x],++s[y],--s[lca(x,y)],--s[fa[lca(x,y)]];
第二种是边上的差分 ++s[x],++s[y],s[lca(x,y)]-=2;
然后有的不单纯是++,--,带有权值修改,比如 LOJ146 https://loj.ac/problem/146
当然对于树上差分最大的问题就是把题目转化成树上差分的形式,就是想到树上差分。
(下次upd 编不下去了)