树上差分:边差分与点差分

1.边差分: 一棵树,让x->y路径上的边权都加上w: d[x]+=w,d[y]+=w,d[lca(x,y)]-=2*w; 最后求出F[i]:以i为子树,d的权值和。即i -> fa[i] 的边权。 如下图: 让6 -> 5 路径上的边权全部加1. d[2]=-2,d[6]=d[5]=1.其余为0 然后F的值为:F[6]=F[3]=F[5]=1. 表示 6 -> fa[6] 的边权为1,3 ->
相关文章
相关标签/搜索