一道很好且比较经典的树上贪心。
一种思路是看子节点中概率最大的走过去,但是这样的贪心显然不对,只要存在子节点的概率很小,但它的子树很大就寄了。
那能否按照子节点的概率和选择呢?这样看上去也不太对。
设已经有两个连通块 $i,j$,则 $i$ 在 $j$ 前面产生的代价是 $ans_i + sz_i \times sum_j + ans_j$,反之 $ans_j + sz_j \times sum_i + ans_j$。
钦定 $i$ 在前更优,则化简得到 $\frac{sz_i}{sum_i} \lt \frac{sz_j}{sum_j}$。
这个可以直接优先队列维护,然后暴力合并即可,合并可以用并查集。
懒,不想贴代码