HDU 1532 && POJ 1273 Drainage Ditches (网络流 EK算法)
2013-09-05 22:28
330 查看
转载请注明出处:http://blog.csdn.net/a1dark
分析:刚学会了EK算法、然后重新找了一题来做、写起来非常流畅、连编译运行都没有、直接一次AC、爽死了、弱弱的我貌似有网络流天赋?嘿嘿、继续加油!
分析:刚学会了EK算法、然后重新找了一题来做、写起来非常流畅、连编译运行都没有、直接一次AC、爽死了、弱弱的我貌似有网络流天赋?嘿嘿、继续加油!
#include<stdio.h> #include<queue> #include<iostream> using namespace std; #include<string.h> #define MAXN 205 #define INF 0xfffffff int map[MAXN][MAXN]; int pre[MAXN]; int vis[MAXN]; int m,n; int bfs(int s,int t){ memset(pre,-1,sizeof(pre)); memset(vis,0,sizeof(vis)); queue<int > q; q.push(s); vis[s]=1; pre[s]=s; while(!q.empty()){ int now=q.front(); q.pop(); for(int i=1;i<=n;i++){ if(map[now][i]&&!vis[i]){ pre[i]=now; vis[i]=1; if(i==t)return 1; q.push(i); } } } return 0; } int EK(int s,int t){ int i,d,flow=0; while(bfs(s,t)){ d=INF; for(i=t;i!=s;i=pre[i]) if(d>=map[pre[i]][i]) d=map[pre[i]][i]; for(i=t;i!=s;i=pre[i]){ map[pre[i]][i]-=d; map[i][pre[i]]+=d; } flow+=d; } return flow; } int main(){ while(scanf("%d%d",&m,&n)!=EOF){ memset(map,0,sizeof(map)); int s,e,v; for(int i=1;i<=m;i++){ scanf("%d%d%d",&s,&e,&v); map[s][e]+=v; } printf("%d\n",EK(1,n)); } return 0; }
相关文章推荐
- hdu1532 Drainage Ditches网络流——最大流 EK算法模板
- hdu 1532 Drainage Ditches && hdu 3549 Flow Problem 网络流最大流问题 Edmonds-Karp算法
- NYOJ 323 && HDU 1532 && POJ 1273 Drainage Ditches (网络流之最大流入门)
- HDU - 1532 - Drainage Ditches && 3549 - Flow Problem (网络流初步)
- Drainage Ditches (poj 1273 && hdu 1532 网络流之Ford-Fulkerson)
- hdu 1532(poj 1273) Drainage Ditches (网络流·最大流)
- 杭州网赛-B(上下界网络流)&hdu-4411
- hdu 1565 网络流(EK算法)
- HDU1532 Drainage Ditches 网络流--dinic算法 SAP算法
- 网络流改进SAP算法模版、HDU 1532 Drainage Ditches(解题报告)
- 【网络流第一步】Hdu 1532——Drainage Ditches
- POJ 1273(HDU 1532) Drainage Ditches|HDU 3549 Flow Problem|很典型&&裸的网络流
- 图论 网络流 HDU 1532 最大流
- hdu 1532 Drainage Ditches(网络流之最大流EdmondsKarp)
- HDU1532_Drainage Ditches(网络流/EK模板/Dinic模板(邻接矩阵/前向星))
- HDU&nbsp;4292&nbsp;Food(网络流)
- hdu1532 网络流
- hdu1532——Drainage Ditches(网络流模板)
- hdu 1565&hdu 1569(网络流--最小点权值覆盖)
- hdu 1532 Drainage Ditches (最大流 : EK && Dinic &&Dinic 当前弧优化 4000 )