随笔分类 -  上下界网络流

摘要:虽然不一定每次都是由编号小的点向编号大的走,但一个人摧毁的顺序一定是从编号小的到编号大的。那么在摧毁据点x的过程中,其只能经过编号小于x的点。并且这样一定合法,因为可以控制其他人先去摧毁所经过的点。那么可以floyd求出由摧毁x到摧毁y的最短路径。注意这里也需要更新起点编号大于终点的情况,否则flo 阅读全文
posted @ 2018-08-31 12:20 Gloid 阅读(228) 评论(0) 推荐(0) 编辑
摘要:一看上去就是一个二合一的题。那么先解决第一部分求最优路线(及所有可能在最优路线上的线段)。 由于不能往下走,可以以y坐标作为阶段。对于y坐标不同的点,我们将可以直接到达的两点连边,显然这样的边的个数是线性的。如果是右上方向那么横纵坐标差相等,左上则和相等,可以直接排序搞定。 y坐标相同的点(下称一排 阅读全文
posted @ 2018-08-05 22:19 Gloid 阅读(221) 评论(0) 推荐(0) 编辑
摘要:原图所有边下界设为1上界设为inf花费为时间,那么显然就是一个上下界最小费用流了。做法与可行流类似。 因为每次选的都是最短路增广,且显然不会有负权增广路,所以所求出来的可行流的费用就是最小的。 阅读全文
posted @ 2018-08-05 13:07 Gloid 阅读(206) 评论(0) 推荐(0) 编辑
摘要:跑出可行流后从原来的汇点向原来的源点跑最大流,原图最小流=inf-maxflow。显然超源超汇的相关边对其也没有影响。原图最小流=可行流-原图新增流量,因为t向s流量增加相当于s向t流量减少。但为什么等于inf-maxflow呢?显然最大流会把这条inf边跑满,这样会增加inf-可行流的流量,然后又 阅读全文
posted @ 2018-08-04 23:08 Gloid 阅读(442) 评论(1) 推荐(0) 编辑
摘要:考虑有源汇上下界可行流:由汇向源连inf边,那么变成无源汇图,按上题做法跑出可行流。此时该inf边的流量即为原图中该可行流的流量。因为可以假装把加上去的那些边的流量放回原图。 此时再从原来的源向原来的汇跑最大流。超源超汇相关的边已经流满不会再退流,则下界可以满足,并且在此基础上增广是可以保证原图的流 阅读全文
posted @ 2018-08-04 22:59 Gloid 阅读(550) 评论(0) 推荐(0) 编辑
摘要:假设初始流为每条边的下界。但这样可能流量会不守恒,我们需要在上面加上一个附加流使流量守恒。只要让每个点开始的出/入流量与原初始流相等就可以求出附加流了。那么新建超源S超汇T,令degree[i]表示流入i的边的下界之和-从i流出的边的下界之和。 若degree[i]>0,则表示需要有额外degree 阅读全文
posted @ 2018-08-04 22:00 Gloid 阅读(476) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示