2248专题

【TOJ】2248 Channel Design 最小树形图——朱刘算法

传送门:【TOJ】2248 Channel Design 题目大意:大概意思是需要从水库(编号始终为1)引水到所有的农场(编号2~n),通过m条水管引水直接或间接的得到水(即有边(1,2),(2,3),则说明3能间接的得到水),其中水管是单向的,且每条水管的铺设都需要一定的费用,问要从水库引水到所有的农场的最少花费。如果无解输出impossible。 题目分析:最小树形图模板题。

最小树形图(tju 2248 UVA 11183 poj 3164)

求最小树形图的总权值   即以固定跟为起点 延给定有向边 可以访问所有的点 并所构成的边权值之和最小 求出这个最小总权值 算法步骤: ① 清除自环,输入的时候判断即可 ② 先判断从固定根开始是否可达所有原图中的点。简单搜索加标记位就可以。如果不可就不用说了,肯定没戏。 ③ 为除根之外的每个点选定一条最小入边。 (记pre [vi]为该边的起点) ④ 判断这个入边集是否存在有向环,如果不存