
网络流问题
文章平均质量分 76
Non_Cease
这个作者很懒,什么都没留下…
展开
-
开始网络流算法学习
转自别处,仅供学习今天看了点网络流的书,发现基本不懂,所以转点文摘http://www.zlinkin.com/?p=34YMhttp://blog.youkuaiyun.com/helihui123/archive/2009/11/24/4861364.aspxhttp://www.pin原创 2011-07-10 19:05:26 · 583 阅读 · 0 评论 -
poj2135
题意:FJ带朋友参观自己的农场,从自己的房子出发到barn(谷仓、畜棚或车库),再从barn返回自己的房子,要求去回不走同一条路。建图:取超级源点,并与房子连一条边,容量为2;取barn与超级汇点间的边的容量为2,中间的建图方法如代码。因为此题是无向图,所以建边的时候如果原创 2011-09-02 19:21:00 · 2164 阅读 · 1 评论 -
poj2516
网络流有点寸步难行了,http://blog.sina.com.cn/s/blog_6635898a0100pabw.html 看这个博客写的代码,自己大致理解了一下,作为最小费用流的邻接矩阵实现的模板。//288K 250ms#include using namespa原创 2011-09-01 19:17:45 · 878 阅读 · 0 评论 -
poj1459
第一次写网络流的题目,虽然时间超长,但终究还是AC了,而且是一次成功,所以还是很开心。用Edmonds-Karp 算法写的,以后再来优化了!代码如下:#include #include using namespace std;#define INF 0x7fff原创 2011-07-11 22:33:37 · 779 阅读 · 0 评论 -
poj1273
网络流的水题,只需注意两点 :1.具有多重边,例如:3 21 2 41 2 51 2 6输出是:152.测试数据有多组,且不是以输入N 为 0 结束。//508K 16ms#include #include using namespace s原创 2011-08-22 16:50:32 · 847 阅读 · 0 评论 -
poj3128 Dinic算法
基本完全复制别人的,汗。。。发现这个模板不适合我这种初学者。。。不过这样的实现感觉略有点难以理解,肯定还要用自己的方式实现一次。邻接表实现的,效率挺高的。然后本题关键还是构图,网上说得很多,我就不重复了。 //224K 0ms#include using原创 2011-08-26 23:23:33 · 813 阅读 · 0 评论 -
poj1637 Dinic
【题目大意】混合图欧拉回路。(1 【建模方法】把该图的无向边随便定向,计算每个点的入度和出度。如果有某个点出入度之差为奇数,那么肯定不存在欧拉回路。因为欧拉回路要求每点入度 = 出度,也就是总度数为偶数,存在奇数度点必不能有欧拉回路。好了,现在每个点入度和出度之差均为偶数。那么将这个偶数除以2,得x。也就是说,对于每一个点,只要将x条边改变方向(入>出就是变入,出>入就是变出),就原创 2011-09-06 21:48:59 · 777 阅读 · 0 评论 -
poj3469 Dinic
Dinic 模板以后做题就用这个模板了。题意:一台双核电脑,给你多个任务,分别给出每个任务在第一个核和第二个核上运行的消耗。后面的m行输入是给出两个任务在两个不同核上运行需要付出的额外消耗。建图:把每个任务作为节点,在超级源点与任务间的连一条边,其容量为给任务在核1上运行的消耗,在该任务节点与超级汇点之间连一条边,容量为该任务在核2上运行的消耗。 在任务之间连接原创 2011-08-31 10:51:10 · 1663 阅读 · 0 评论 -
poj1149
EK模板,本题关键在于构图。将顾客作为结点,构图如下:1.取超级源点和超级汇点;2.当猪圈被第一次打开时,在源点与当前顾客之间连接一条边,容量为该猪圈的猪的头数;3.当某个猪圈 不是被第一次打开时,在上一个打开该猪圈的顾客与当前打开该猪圈的顾客之间连接一条边,容量为无穷大;4.在每个顾客与源点之间连接一条边,容量为该顾客要买猪的头数。代码如下://47ms#inclu原创 2011-08-24 09:50:58 · 1277 阅读 · 0 评论