把博客园图标替换成自己的图标
把博客园图标替换成自己的图标end

最小割的一些小技巧(实用小干货)

求最小边的最小割

设总边数为E,跑最大流之前所有的边权都乘E+1然后再+1

得到的结果应该是mincut(E+1)+割边数量(这个比较显然吧)

由于割边数越小,跑出来结果越小,所以就自动选了割边数量小的边(但相同不能保证字典序)

结果就是最小边数

E+1也可以替换成大于边数的数。

 

输出任意一种最小割的方案

跑过一次最大流之后,在残量网络上,s和t之间不连通了
进行一次dfs/bfs,求出从s出发能到达的点集S,和不能到达的点集T
所有从S跨越到T的满流边(残留网络为0)构成了一组最小割

 

判断一条边是否满流

运行一次最大流算法,得到一个残量网络
取残量网络上的一条满流边(u, v),判断这条边是否一定满流
对残量网络运行Tarjan算法,求出所有SCC
当u和v不属于同一个SCC的时候,这条边一定满流
否则,我们可以在SCC中找到一个包含这条边的反向边的环,沿着环增广一次,仍然不破坏流量平衡,但是这条边已经不满流了

 

判断某一条边是否可能为最小割中的一条

所有一定满流的边都可能为最小割

 

判断某条边是否一定出现在最小割中

首先还是对残量网络求SCC
考虑一条满流边(u, v),判断她是否一定出现在最小割中
当u和s属于同一个SCC,并且v和t属于同一个SCC的时候,这条边一定出现在最小割中

posted @   Starlight_Glimmer  阅读(958)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
浏览器标题切换
浏览器标题切换end
点击右上角即可分享
微信分享提示