借助这道题目,讲一下所有最大流建模的思路
对于原问题的解集 S S S和我们建模之后的网络的可行流集合 T T T,我们需要证明 ∀ s ∈ S , ∃ t ∈ T , ∣ s ∣ = ∣ t ∣ \forall s∈S,\exists t∈T,|s|=|t| ∀s∈S,∃t∈T,∣s∣=∣t∣(前面一个绝对值符号表示 s s s的值,后面一个绝对值符号表示 t t t的最大流)且 ∀ t ∈ T , ∃ s ∈ S , ∣ s ∣ = ∣ t ∣ \forall t∈T,\exists s∈S,|s|=|t| ∀t∈T,∃s∈S,∣s∣=∣t∣(其实上面的证明方法也就是充分必要性证明)
那么对于二分图的建模见蓝书,来像上面证明一下
首先对于二分图的任意一个匹配,我们可以构造一个流 f f f,使得从源点到匹配点的边,从匹配点到汇点的边,匹配边的流量为 1 1 1,其余的边的流量为 0 0 0,不难验证这是一个流(满足流量守恒和容量限制);其次对于构造的网络的任意一个流,将流量为 1 1 1的中间的边作为匹配边,不难验证这是一个二分图(满足每个点只匹配一次)