网络流小结

对这段时间做的网络流问题做一个小结,希望有用,题目的话,可以去我的专题里面找

网络流算法的模版和详解
EK算法
ISAP
Dinic
MCMF

论文和知识点的讲解
胡伯涛:算法合集之《最小割模型在信息学竞赛中的应用》

模型和建模

1.多源多汇问题:源有多个,汇也有多个,流可以从任意一个源流出,最终可以流向任意一个汇,总流量等于所有源流出的总流量,也等于流进所有汇的总流量

建模方式:加一个超级源s’和超级汇t’,然后从s’向每个源引出一条有向弧,容量为无穷大,每个汇向t’引一条有向弧,容量为无穷大

题目:UVA-11045

2.结点容量:每个结点都有一个允许通过的最大流量,称为结点容量

建模方式:把每个原始结点u分裂成u1和u2两个结点,中间连一条有向弧,容量等于u的结点容量。原先到达u的弧改成到达u1,而原先从u出发的弧改成从u2出发

题目:UVA-10330

3.无源无汇的有上下界的流

模型分析:这个模型比较特别,没源又没汇,而且每条弧除了有容量c之外,还多了一个下界b。
那就分析一下该模型的特点,既然无源无汇,那么每个结点就都要满足”入流=出流”这个流量平衡条件

依此性质,就求出每个点的入流和出流,用d[]代表每个结点的入流-出流。接着设置一个超级源点S和一个超级汇点T,因为要满足所有结点的入流=出流,所以:
1.d[u] > 0的点,建立 (S->u)的边,容量为d[u]
2.d[u] < 0的点,建立(u->T)的边,容量为-d[u]
3.所给的边(u,v,c,b),建立(u->v)的边

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值