题解:P5478 [BJOI2015] 骑士的旅行

· · 题解

显然需要树链剖分,将树上问题转化成序列上问题。

发现 k 很小,所以我们可以用线段树维护前 k 大,并用 \mathcal O(k) 的时间复杂度 pushup。

注意可用 multiset 存储每个叶子节点上的骑士编号和骑士武力值。