最小割的可行边与必须边
题目链接:poj 3204
题意:输出一个有向图最小割的必须边的个数。
题解:看在我估计不会写最小割的可行边的份上,这次就把两种边的求法都写一遍把。首先说一下两种边的定义:必须边——一定在最小割中的边、扩大容量后能增大最大流的边;可行边——被某一种最小割的方案包含的边。下面来说做法:对于必须边来说满足以下条件——①满流;②残余网络中 S 能到入点、出点能到 T 。从 S 开始 D F S 、T 开始反向 D F S ,标记到达的点,然后枚举满流的边即可。对于可行边来说满足以下条件——①满流;②删掉之后在残余网络中找不到 U 到 V 的路径。一可以在残余网络中 t a r j a n 求 S c c ,二可以在残余网络中 F l o y d 一发,反正不影响复杂度 O(∩_∩)O哈哈~~~
我思故我在:在最后统计答案的时候我们应该列举完全所有的条件。 一开始我在写上面那一段代码的时候就没有判断是否满流,导致 W A 的很不爽。我贴一个数据大家就明白了:
4 6
0 1 4
0 2 2
1 2 2
1 3 1
2 3 7
2 0 1
A N S :3