![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
最大流
zsyz_ZZY
Be the stronger one!
展开
-
luogu P2756 飞行员配对方案问题
这就是一道模板题,二分图或网络流模板改改(记录路径)就OK了。方法1:关于构图:匈牙利模板(自带记录路径)。关于代码:#include<cstdio>#include<cstring> bool bz[501][501]; bool p[501]; int a[501],match[501]; int n,m,ans;bool find(...原创 2018-03-03 17:20:48 · 372 阅读 · 0 评论 -
luogu P2402 奶牛隐藏
题目传送门:https://www.luogu.org/problemnew/show/P2402题意:有n个点,m条边,每一个点一开始都有b1i头奶牛,并且都可以容纳b2i头奶牛,但是b1i有可能大于b2i,因此奶牛需要迁徙,迁徙的时间为路程的长度。求最小的时间,若无法完成,输出-1。思路:容易想到最短路floyd,因为可以与处理出从i点到j点的最短路(即时间花费)。然后发现时间好像不能直接求,...原创 2018-05-21 13:12:00 · 269 阅读 · 0 评论 -
luogu P1129 [ZJOI2007]矩阵游戏
题目传送门:https://www.luogu.org/problemnew/show/P1129题意:有一个n*n的01矩阵,求是否存在一种选任意两行或任意两列交换的方案使得主对角线((1,1),(2,2)(3,3)...(n,n))的值都为1。思路:又是一种新的网络流建模方法。先将构图再讲原理吧。构图:1.原点向每一行连边,流量为1;2.每一列向汇点连边,流量为1;3.对于一个值为1的点,其对...原创 2018-04-25 16:12:47 · 274 阅读 · 0 评论 -
luogu P4251 [SCOI2015]小凸玩矩阵
背景:GDOI2018考完了,凉凉......看到了差距。题目传送门:https://www.luogu.org/problemnew/show/P4251题意:有一个n*m的矩阵,选k个数,这n个数两两必须不在同一行和同一列,求第k大的数的最小值是多少。思路:通过“最大值最小”可以显然想到二分。然后就按照套路跑网络流,看看是否可行。套路:请见我的blog:luogu P1129 [ZJOI200...原创 2018-05-01 17:06:43 · 152 阅读 · 0 评论 -
luogu P3376 【模板】网络最大流
题目传送门:https://blog.csdn.net/zsyz_zzy/article/category/7479944题意:有n个点,m条边,求从st到ed的最大流。思路:模板题,不讲(只是留个存档)。代码:#include<cstdio>#include<cstring>#include<queue>#include<algorithm>...原创 2018-04-17 14:23:27 · 264 阅读 · 0 评论 -
luogu P2764 最小路径覆盖问题
关于构图:理解了题意就好了,其实这是一道水题,比较模板,类似于飞行员配对方案问题。题意:最小不相交路径覆盖:每一条路径经过的顶点各不相同,求路径数和方案。在这里推荐一篇好的博客,帮助理解题意:点击打开链接。方案怎么求呢。其实在学二分图的时候,我们就学过这样一条性质:最短路径数=点数-最大匹配数,而我们知道了点数,再用网络流求最大匹配数就OK了。除了拆点(只要理解了题意就可以想到),就是记录路径(在...原创 2018-03-13 13:25:25 · 299 阅读 · 0 评论 -
luogu P2766 最长不下降子序列问题
关于构图:首先,第一问dp(O(n^2) or O(nlogn)这里就不用二分优化了,详情请咨询我的blog)稳稳的。很明显用网络流做,明明是看到标签。很明显第三问是第二问的升级版,只需将超级源点和汇点到相应点的边权改为INF即可。构图(p[i]表示原序列第i个的数,dp[i]表示以i为终点的最长不下降子序列的长度):1.超级源点和汇点:st=0,ed=n*2+1。2.从i'向i建一条流量为1的边...原创 2018-03-08 14:04:53 · 380 阅读 · 0 评论 -
luogu P3254 圆桌问题
关于构图:首先,这是一道最大流记录路径的题目,构图不难,记录路径才是重点。那么,我们就借鉴二分图的方法用网络流做(类似于试题库问题)。构图:1.有一个超级源点和汇点(st=0,ed=n+m+1)。2.每一个单位连向源点,流量为该单位的人数。3.每一个单位连向每一个餐桌,流量为1,表示这个单位的人可以坐任何一个餐桌,但为了使相同单位的人做不到一个餐桌上,所以流量为1。4.每一个餐桌连向汇点,流量为该...原创 2018-03-07 13:58:46 · 342 阅读 · 0 评论 -
luogu P2763 试题库问题
关于构图:首先,这是一道最大流记录路径的题目,构图不难,记录路径才是重点。那么,我们就借鉴二分图的方法用网络流做。构图:1.有一个超级源点和汇点(st=0,ed=n+m+1)。2.由每一个试题种类连向汇点,流量为当前这个试题的需求,当全部都留满时,表示有符合要求的情况。3.由源点连向每一道试题,流量为1。4.由每一道试题连向它所对的每一个试题种类。以上不难理解,很裸。重点来了:if(t!=0&am...原创 2018-03-06 13:54:37 · 559 阅读 · 0 评论 -
luogu P2754 家园
关于构图:1.从源点向每一天的地球链接一条INF。2.从每一天的月亮向汇点链接一条INF。3.从上一天的每一个节点向当天的对应节点链接一条INF(因为人们可以留在中转站等一等嘛)。4.针对每一艘飞船,获取其上一天的位置,再获取这一天的位置,在这两个点之间连一条容量为飞船满载人数的边每次新加一天然后跑到最大流超过k即可。至于无解的情况只要当ans达到一个很大的值的时候跳出来即可 。关于代码:#inc...原创 2018-03-03 17:29:09 · 387 阅读 · 0 评论 -
杭二学习Day2——专题(最大流&费用流)
背景:又是一顿McDonald’s\text{McDonald's}McDonald’s。这附近已经没有什么好吃的了。555天来的第555顿了,222早+222午+111晚=333个杯子。最大流:主要讲了ISAP\text{ISAP}ISAP。听得不是很仔细。可能回去会补,坑坑坑。他推荐了这道题(其实是我只听到了这道题):luogu P2598\te...原创 2019-08-02 22:39:32 · 154 阅读 · 0 评论