「HDU-2121」Ice_cream’s world II
朱刘算法,不定根最小树形图
题意
给定一个有向图,选择一个点使其能到达其他所有点,并使花费最小,输出最小花费。如果有多个这样的点,输出编号小的点。如果没有这样的点,输出impossible.
思路
不定根最小生成树模板题。
设定一个虚根并向所有结点连边,边权为图上所有边的边权之和$sum+1$,以虚根为$root$跑一遍朱刘算法。
如果求出的边权之和$res>=2*sum$,说明至少有两个结点是从虚根出发到达的点,即原图不连通。
原图连通的状态下,只有一个点是从虚根出发到达的点。在跑最小树形图时记录从虚根出发到达的点,即为原图的根。
代码
1 |
|