UVA 10480 Sabotage

给你一个无向图 求最小割 输出割边

跑一遍最大流 关键在于如何输出割边 最小割实际上是将一个图删去一些边 使其分成两个集合 源点在一个集合 汇点在一个集合 所有的割边就是从这个集合到那个集合 所有的集合之间相连的边 用从源点开始BFS一遍 找到所有与源点在一个集合的点(就是BFS能经过的点) BFS在残留网络搜 如果这条边的容量大于流量 那么就可以走 反之不行 找到集合后 输出 所有流量为负数的边(就是改变有流量经过) 同时该边的两个点一个在源点所在集合内 一个不在源点所在集合内 如果满足条件 输出 

猜你喜欢

转载自www.cnblogs.com/16-CHQ/p/8971448.html