点击打开链接
分析:
求最大流
建图:
拆点 牛拆成左边与食物相连的左牛 和 右边与饮料相连的右牛
1、s->食物 连边
2、食物->左牛
3、左牛->右牛
4、右牛->饮料
5、饮料->t
边的方向为 s->食物->左牛->右牛->饮料->t
#include
#include
#include
#include
#include
using n...
分类:
其他好文 时间:
2014-07-12 17:13:15
阅读次数:
181
2014.07.04 20:43简介: 给定一个有向图,如果每一条边u->v代表一根水管,定义能从u流向v的最大水流量。那么选定起点s和终点t,如果让水从s流入,从t流出,最多能达到多少流量而不挤爆水管?图示: Capacity是容量的意思,那么我们用C(u, v)来表示u->v这条边,也就是u.....
分类:
编程语言 时间:
2014-07-06 17:16:55
阅读次数:
260
题目的意思是给你一个棵树,每天边上有一个权值,现在要想根节点和每个叶子节点完全隔离开来,删除一些边,求最少需要删除的边权值综合是多少?直接建模,以根节点为汇点,每个叶子节点连接虚拟源点流量无穷,树上的节点按原样建模就可以了。最后跑一遍最大流等于最小割,完美解决。召唤代码君:#include #inc...
分类:
其他好文 时间:
2014-07-06 12:53:10
阅读次数:
125
题目很简单、给一个有向图,求两点间的最大流量与任意一条路中的最大流量的比值。最大流不说了,求出单条流量最大的路径可以用类似Spfa的方法来搞,保存到达当前点的最大流量,一直往下更新即可。召唤代码君:#include #include #include #include #define maxn 10...
分类:
其他好文 时间:
2014-07-05 19:53:06
阅读次数:
184
题目地址:POJ2195
本人职业生涯费用流第一发!!快邀请赛了,决定还是多学点东西,起码碰到简单的网络流要A掉。以后最大流费用流最小割就一块刷。
以前费用流在我心目中一直是高大上,高不可攀的形象,可这两天才发现,原来费用流就是一个spfa再加点东西。。。一直以为费用流会比最大流的isap要麻烦好多,毕竟多了一个费用的元素。。。。我真的错了。。仔细研究了一下,只用一个spfa确实就可以解决了。...
分类:
其他好文 时间:
2014-07-03 18:15:51
阅读次数:
200
在这里我只放我的模板和一些我个人的“理解”。。最大流测试题:usaco草地排水EK:时间复杂度:O(VE^2)代码复杂度:最易代码:#include #include #include using namespace std;#define CLR(a) memset(a, 0, sizeof(a)...
分类:
其他好文 时间:
2014-07-02 20:54:22
阅读次数:
276
题目地址:POJ3288
这个题跟之前的一道题混了,感觉是一样的,所以连想都没怎么想就拆点然后求最短路然后二分求最大流了。结果连样例都不过,还一直以为又是哪里手残了。。结果看了看样例,手算也确实不对,,。后来就没拆点,直接在原点上建的图,结果样例就过了。。然后提交1次AC。。。
后来仔细的想了想,这题是问每一段路的最短的,而不是整个的最短的。所以说不应该拆点。而我混的那道题(poj2391)是...
分类:
其他好文 时间:
2014-07-02 07:48:56
阅读次数:
140
题目地址:POJ2455
手残真浪费时间啊。。又拖到了今天才找出了错误。。每晚两道题不知不觉又变回了每晚一道题、。。sad。。
第一次在isap中忘记调用bfs,第二次则是遍历的时候居然是从1开始遍历的。。。sad。。。
这题思路倒是很简单,就是有一个比较坑的地方,就是这里的重边要当两条边来用,以前受最短路什么的影响,直接把慢的删了,很明显不对。。。这里的两条重边都是可以走的。
建图思路是...
分类:
其他好文 时间:
2014-07-01 14:44:29
阅读次数:
194
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=3605
本来打算昨天写两道题的,结果这个题卡住了,最后才发现是最后的判断条件出错了,判断满流的条件应该是与n的比较,竟然写成与所有星球总容量的比较了。(最近大脑短路。。)
这题也不是完全自己想的,没想到缩点这一技巧,由于n的数据范围太大,普通的建图方法会超时超内存,需要缩点,因为对于每个点来说,一共...
分类:
其他好文 时间:
2014-07-01 07:53:27
阅读次数:
235
题目:
链接:点击打开链接
题意:
求最大流速。
思路:
Edmond_karp就行。
代码:
#include
#include
#include
#include
using namespace std;
#define INF 100000000
const int N = 220;
int cap[N][N],flo...
分类:
其他好文 时间:
2014-07-01 07:15:11
阅读次数:
226