最大流
verdin黄大锤
afo啦!
展开
-
洛谷 P3376 【模板】网络最大流 (最大流dinic模板)
题目:网络最大流思路:模板题。注意存边的数组要开两倍。代码:#include<bits/stdc++.h>using namespace std;#define maxn 10000#define maxm 200000#define inf (1<<30)#define read(x) scanf("%d",&x);struct Edg...原创 2018-09-16 15:44:33 · 590 阅读 · 1 评论 -
洛谷 P2740 [USACO4.2]草地排水Drainage Ditches (EK增广路算法求最大流模板)
题目:草地排水思路:EK增广路算法求最大流模板代码:#include<bits/stdc++.h>using namespace std;#define maxn 200#define read(x) scanf("%d",&x);#define inf (1<<30)int n,m;int c[maxn+5][maxn+5];in...原创 2018-09-13 21:58:52 · 337 阅读 · 0 评论 -
洛谷 P2762 太空飞行计划问题 (网络流24题)
题目:太空飞行计划问题思路:把所有的实验和s连边,权值为实验的费用;把所有的材料和t连边,权值为材料的费用;再把实验和对应的材料连边,权值为inf。求一遍最小割,输出下路径。注意一下,最小割的路径和最大流不同。一条边被割裂的条件,是一端与s相连,另一端不与s相连,即d值一个为0,一个非0。代码:#include<bits/stdc++.h>using namespa...原创 2019-02-25 18:10:25 · 371 阅读 · 0 评论 -
洛谷 P2766 最长不下降子序列问题(网络流24题)
题目:最长不下降子序列问题思路:第一问,O(n2)O(n^2)O(n2)求LIS即可。处理出f[i]f[i]f[i]表示以i开头的不下降子序列个数,得出答案记为k。第二问,先拆点,把一个点xxx拆成(x,0)(x,0)(x,0)和(x,1)(x,1)(x,1),并把两者连边。设置一个原点S和汇点T。把S和所有f[i]==1f[i]==1f[i]==1的点连边,把所有f[i]==kf[...原创 2019-02-26 20:53:31 · 282 阅读 · 0 评论 -
洛谷 P2763 试题库问题 (网络流24题)
题目:试题库问题思路:源点S向所有试题连边,边权为1。所有试题向对应的类型连边,权为1。所有类型向汇点T连边,权为需要的试题数量。跑最大流并输出路径即可。代码:#include<bits/stdc++.h>using namespace std;#define maxk 20#define maxn 1000#define maxm 100000#define...原创 2019-02-27 13:44:36 · 236 阅读 · 0 评论 -
洛谷 P2774 方格取数问题
题目:方格取数问题思路:将点集拆成两部分,使得这两部分没有公共边。根据这个建图,求二分图最大独立集,也就是总权值-最小割。代码:#include<bits/stdc++.h>using namespace std;#define maxn 10000#define read(x) scanf("%d",&x)#define inf (int)1e9s...原创 2019-03-04 16:08:30 · 245 阅读 · 0 评论