网络流
Hearthougan
这个作者很懒,什么都没留下…
展开
-
poj 2112 Optimal Milking
/**先用floy求出各个挤奶器到各个奶牛的最短距离,因为题中给的距离不一定是最短的!然后再用二分的方法去找答案,即在0~max(max为奶牛到挤奶器可能的最大距离,我认为是200*200=40000)用二分查找的方法去找最大距离的最小值;不断用mid的值去建网络流图添加源点0,汇点n+1,源点到所有挤奶器的距离为m.即map2[0][1..k]=m;奶牛到汇点的距离为1即map2[k+原创 2013-10-25 10:14:07 · 552 阅读 · 0 评论 -
1459 Power Network
设容量网络为G(V, E),f是其可行流,对于一个残留网络G'(V, E),如果一个函数d将顶点集合V映射到非负整数集合,则称d是关于残留网络G'的距离函数(distance function)。d(u)称为顶点u的距离标号(distance label)。 如果距离函数d满足:(1) d(Vt) = 0,(2) 对G'中的任意一条弧,有d(u)≤d(v)+1,则称距离函数原创 2013-10-26 17:26:11 · 739 阅读 · 0 评论 -
网络流 练习
题目:利用Ford_Fulkerson (标号法)求图1(a)及2(a)所示的容量网络的最大流,输出各条弧及其流量,以及求得的最大流流量。 (1)(2)分析: 在下面的程序中,以邻接矩阵存储容量网络,但邻接矩阵中的元素为结构体ArcType类型变量。该结构体描述了网络中弧的结构,包含容量c和流量f两个成员。在程序中,还定义了三个数组:flag[n], prev原创 2013-10-23 16:05:57 · 857 阅读 · 0 评论 -
poj1149迈克卖猪问题(PIGS)
/**建图:: 将顾客看作是除源点和汇点的结点,并且另设两个结点,源点和汇点:源点和每个猪圈的第一位顾客连边,边的权值是开始时猪圈中猪的数量:若源点和某个结点有重边,则将权值合并(因此,从原点流出的流量就是所有猪圈所能提供猪的数量):顾客j紧跟顾客i打开某个猪圈,则置的权值为无穷大,因为顾客j紧跟顾客i之后,迈克可以根据顾客j的需求,调来足够多的猪。:每个顾客都和汇点连接,原创 2014-02-23 15:52:49 · 1074 阅读 · 0 评论 -
有上下界的网络流
#include #include #includeusing namespace std;const int INF1 = 100000000;const int INF2 = 10000;const int MAXN = 20;struct Arctype{ int b, c, f;};Arctype Edge[MAXN][MAXN];Arctype Ac原创 2014-02-25 10:22:49 · 727 阅读 · 0 评论 -
poj1273 Drainage Ditches
#include #include using namespace std;const int INF = 100000000;const int MAXN = 210;int Graph[MAXN][MAXN];int dist[MAXN];int n, m;int MIN(int a, int b){ return a < b ? a : b;}boo原创 2014-02-26 20:54:02 · 628 阅读 · 0 评论