网络流
ID_BePosit
如果今天不比昨天多做一点什么,那么明天还有什么意义。
展开
-
H - Vin Diagrams Gym -最大流EK
H - Vin Diagrams Gym - 101196H 题意:每个小孩喜欢几个玩具每个玩具只有一个,然后玩具有分类同一类的玩具被拿走的数量有限制,注意建图方式 跑EK网流即可 #include<bits/stdc++.h>using namespace std;#define maxn 410#define inf 0x3f3f3f3fint n...原创 2018-10-21 11:13:32 · 262 阅读 · 0 评论 -
P3376 【模板】网络最大流-DINIC
P3376 【模板】网络最大流#include <iostream>#include <cstdio>#include <cstring>#include <queue>using namespace std;const int MAXN = 1e6;const int INF = 1e9;struct edge{ i...原创 2018-11-07 10:28:16 · 261 阅读 · 0 评论 -
H - Food HDU - 4292 -网络流-拆点
H - Food HDU - 4292 题意:给定N个人、F种食物、M种饮料以及每种食物数量、每种饮料数量。 通过一个N*F的矩阵给出某个人是否接受某种食物。 再通过一个N*M矩阵给出某个人是否接受某种饮料。 顾客的要求是同时有饮料和食物(即其接受的饮料至少提供一瓶,接受的食物至少提供一份)。 求最多能满足多少位顾客。 思路:顾客同时需要满足饮料和食物两种需求,可以引...原创 2018-11-11 11:17:32 · 204 阅读 · 0 评论 -
B - Dining POJ - 3281 -网络流拆点模板
B - Dining POJ - 3281 题意:一些牛,每只牛有 一些 想吃的food and milk,然后问最大能够满足多少只牛。 满足是指的这头牛即能吃到他喜欢吃的又能喝到他喜欢喝的 思路:最大流,关键建出图来,源点汇点肯定是要有的,然后中间呢因为满足一头牛的需求是有一个food and milk 所以为了保证结果最大只需要经过每个牛一次就行了,这里就需要把牛cop...原创 2018-11-08 16:35:05 · 253 阅读 · 3 评论 -
6005-最长递增子序列 -DP-最大流
6005.「网络流 24 题」最长递增子序列 n<=500 思路:先用dp求出第一问的答案,和 dp数组,dp[i]代表以i为终点最长不下降子序列的长度 对于第二问,源点T向 dp[i]等于第一问答案的点连边,dp[i]=1的点向汇点S连边,中间的点 u和点v,如果 dp[u]=dp[v]+1且a[u]>...原创 2018-12-26 16:33:25 · 327 阅读 · 0 评论 -
P2774 方格取数问题-最小割模型
P2774 方格取数问题 把点权转换为了边权,我们的目的是断开一些边,使得没有路径从源点到达汇点(为了满足题目的条件)。 然后我们要使断开的边的权值之和最小(断开的边就相当于是不选那个点,就是剩下的边权之和最大) 所以我们可以跑一遍最大流求出最小割,然后用总的边权减去它就是我们的答案了 #include<bits/stdc++.h>using namespace std...原创 2018-12-27 09:27:27 · 306 阅读 · 0 评论