sgu-194-Reactor Cooling(无源汇有上下界最大流)

题意:给n个点,及m根pipe,每根pipe用来流躺液体的,单向的,每时每刻每根pipe流进来的物质要等于流出去的物质,要使得m条pipe组成一个循环体,里面流躺物质。并且满足每根pipe一定的流量限制,范围为[Li,Ri].即要满足每时刻流进来的不能超过Ri(最大流问题),同时最小不能低于Li。

分析:这个模型比较特别,没源又没汇,而且每条弧除了有容量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)的边,容量为c - b,为什么是c - b,因为我们假设该边已经流了b的流量了。如果求出来的是满流,表示能满足每条边的下界,解释一下为什么,根据流量守恒的性质,所有点的入流=所有点的出流,所以满流的时候,就满足了。 为什么要这样建模,首先,d[u]>0的连向了源点,也就是说,从u出发的都是出流了,只要该边满流了,就能让u点的入流=出流了,d[u] < 0的情况相同。建图如下。

总结:无源无汇,抓住每个结点就都要满足”入流=出流”这个流量平衡的性质。

代码:待补。参考https://blog.youkuaiyun.com/L123012013048/article/details/49765891https://blog.youkuaiyun.com/qq_33362864/article/details/78197823

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值