首先,贪心得把每一个人得要求按照 w w w 从小到大排序,以免小的被大的给覆盖了。
然后就把 u , v u,v u,v 上的路径给覆盖成 w w w 就行了。
考虑如何求 u , v u,v u,v 路径。
- 求 l = lca ( u , v ) l=\operatorname{lca}(u,v) l=lca(u,v)。
- 不断让 u u u 成为自己的父亲,并标记边,直到 u = l u=l u=l。
- 不断让 v v v 成为自己的父亲,并标记边,直到 u = l u=l u=l。
注意其他要标记为 [ 1 , 1 0 6 ] [1,10^6] [1,106] 范围的整数。