我就是来复习Dinic算法的,仅10天不写,我已经退化成写一遍+调试需要接近一个小时了,当然其中不乏在网上乱逛的时间…赞成从S源点连一条单向边,反对向T汇点连一条单向边,朋友关系连双向边。但是总感觉自己看到题目不能一下想到这是网络流,感觉这些题都是给一个图,求最优之类。program vote;ty...
分类:
其他好文 时间:
2014-07-22 22:47:34
阅读次数:
296
最大流:DINIC or SAP最小费用最大流:SPFA+增广(费用的值较离散) or ZKW(费用的值集中)有源汇的上下界最大流:新建s', t',用(i, j, l, r)表示i到j有一条下界为l上界为r的边,将每条这样的边拆成(s', j, 0, l), (i, t', 0, l), (i, ...
分类:
其他好文 时间:
2014-07-20 22:34:39
阅读次数:
261
解题报告
这题建模实在是好建,,,好贱,,,
给前向星给跪了,纯dinic的前向星竟然TLE,sad,,,回头看看优化,,,
矩阵跑过了,2A,sad,,,
/*************************************************************************
> File Name: PowerN.cpp
> Author: _nplu...
分类:
Web程序 时间:
2014-07-19 12:09:09
阅读次数:
310
最后两点怎么搞都要30s+,但是我不会什么优化啊…暂时就这样吧。Dinic的时间复杂度是O(N^2*M)这题和TDL的幼儿园模板是一样的。这次写网络流给自己计时了,大约是40min左右,后来都跑去倒腾后面两组数据去了…program profit;type ptype=^node; node...
分类:
其他好文 时间:
2014-07-14 08:27:24
阅读次数:
235
怒搞一下午网络流,又去我一块心病。
从2F到SAP再到Dinic终于过掉了。可是书上说Dinic的时间复杂度为v*v*e。感觉也应该超时的啊,可是过掉了,好诡异。
后两种算法都是在第一种的基础上进行优化。第一种方法就是不停的寻找增广路,后两种引进了层次网络的概念,第三种又#include
#include
#include
#include
#include
#include...
分类:
Web程序 时间:
2014-07-03 13:51:25
阅读次数:
294
POJ 2391 Ombrophobic Bovines (二分,最短路径,网络流(sap,dinic,预留推进) )
题目大意:
有n头奶牛及牛棚,以及m条边,接下来告诉你n行,每行表示这个牛棚奶牛实际数目,以及能容纳的数目,接下来m行告诉你奶牛从一个牛棚到另一个牛棚所需要的时间,问你,是否所有奶牛能够到达牛棚,如果不能,输出-1,如果能,输出最短时间。
解题思路:
这种最短时间,想到了二分,是否能到达,想到了最短路径,是否能全部容纳,想到了构建一张网络图,来解决。
这题采用了三种网络流解法,sap...
分类:
其他好文 时间:
2014-06-08 15:31:12
阅读次数:
335
最小费用最大流,一般解法如下:
在流量基础上,每条边还有权费用,即单位流量下的所需费用。在最大流量下,求最小费用。解法:在最大流算法基础上,每次按可行流增广改为每次用spfa按最小费用(用单位费用)增广,每次按每条边一单位费用求到达终点的最小费用(最短路),那么每次找到“最短路”(只是一条路,不是多条(dinic每次可以增广多条)),之后按这条路最大
可能流量增广(取这条路上残量最小的),直到...
分类:
其他好文 时间:
2014-05-18 18:36:55
阅读次数:
267
题目来源:HDU 4240 Route Redundancy
题意:求最大流与一条流最大的路径的比值 前者最大流求出 后者是每一条路的最小值再取大
思路:我用的是dinic 可以在DFS的时候在传递一个参数 表示当前增广路可以通过最大的流量 然后当x==t 到达汇点时 在取他们的最大值
#include
#include
#include
#include
#include
usi...
分类:
其他好文 时间:
2014-05-08 10:58:21
阅读次数:
319
poj1637 判断混合图是否能形成欧拉回路:网络流做奇偶性判断(inspire) 1
//dinic算法: 2 #include 3 #include 4 #include 5 #include 6 #include 7 8 #define
INF 0x3f3f3f3f...
分类:
其他好文 时间:
2014-05-05 23:25:28
阅读次数:
464
先用bfs预处理出层次图,然后在层次图上用dfs找增广路径,理论复杂度O(n*n*m)const
int INF=0xfffffff ;struct node{ int s,t,cap,nxt ;}e[200005] ;int
m,n,head[10005],level[10005],cnt ...
分类:
其他好文 时间:
2014-05-01 20:05:16
阅读次数:
379