实际上,我不太了解该解决方案。但在最初的问题中,davin 提供的第二个答案是绝对正确的。
我只是复制粘贴到这里
Given a minimum S-T cut, (U,V) with cut-edges E', we make one simple observation:
If this minimum cut is not unique, then there exists some other minimum cut with
a set of cut-edges E'', such that E'' != E'.
If so, we can iterate over each edge in E', add to its capacity, recalculate the
max flow, and check if it increased.
As a result of the observation above, there exists an edge in E' that when
increased, the max flow doesn't increase iff the original cut is not unique.
我自己的一些解释:
你实际上需要证明的是
there exists an edge in E' that when increased, the max flow doesn't increase
<=>
the original cut is not unique
=>:
你将边的容量增加e
1,计算新的最大流量,它保持不变,这意味着它e
不在新的最小切割中。(如果e
在,根据最小割的性质,f(e)=e的容量,这导致增加)。由于e
不在新的最小割中,它也是原图的最小割,与我们知道的割具有相同的体积。因此,原始割不是唯一的。
<=:
原始剪切不是唯一的(我们称它们为E
and E'
),这意味着您可以找到e
在 inE
但不在的边E'
。然后你只需将容量增加e
1。在计算新图的最小切割时,E'
已经存在。由于E'
不包含 edge e
,因此 max flow 毫无疑问保持不变。
希望你能理解 :)