最小割的可行边与必须边

发布时间 2023-05-30 23:01:32作者: Linnyx

最近做了一道神奇的题,涉及了一些奇怪的知识,了解了一下

补:比较绕人,部分可以多读几遍

已知割集是指在网络流的一张图上,删去割集里的边后使原点与汇点不连通,并且这些边构成最小割,显然一张网络流图上有多个割集,这时就有 \(2\) 个概念去区分存在于这些割集中的边:

1.可行边: 指存在于任意割集中的的边(可看做所有割集的并)

2.必须边: 指存在于所用割集中的的边(可看做所有割集的交)

从定义可知,必须边集合是可行边集合的子集

显然,割集中的边都是满流

如果是可行边,充要条件:

\((1)\). 满流

\((2)\). 在残余网络中找不到 \(u\rightarrow v\) 的路径

如何去证明\((2)\)呢?

考虑我们有一条从 \(u\)\(v\) 的路径,假设此时\(u\rightarrow v\)已经满流 (要是没满流连 \((1)\) 条件都不满足)

此时加上残量网络中的反悔边,\(u\ v\)在一个环内,发现\(u\rightarrow v\)的满流就可以沿着环流动,不破坏最小割,但是满流就被破坏了

由此我们可以看出,如果\(u\rightarrow v\)是一个可行边,他们不能在一个强连通分量

如果是可必须边,充要条件:

\((1)\). 满流

\((2)\). 残余网络中源点能到入点, 出点能到汇点

同样来考虑证明\((2)\)

我们已知,必须边集合是可行边集合的子集,首先它们是可行边,再被我们进一步挑选成为必须边,所以它们在残余网络中已经没有了 \(u\rightarrow v\) 的路径

如果源点到不了汇点,则说明它前面一定有其他满流的边堵塞了全部流量,此时它就不是唯一的了,可以选前面的进行替代(出点到汇点同理)

由此我们可以看出,如果\(u\rightarrow v\)是一个必须边,源点和 \(u\) 必须在一个强连通分量里, \(v\) 和汇点也必须在同一个强连通分量

此时定理就证明完了

\(tarjan\) 便能很便捷求出残量网络上的强连通分量,代码就不做赘述

不会 \(tarjan\) 的可以去洛谷上找板子, 还有更多神秘妙妙用法

例题:

\(1\). P4126 [AHOI2009]最小割

\(2\). P3308 [SDOI2014]LIS