poj 1273
2013-09-12 14:28
274 查看
网络流之最大流的基础题;
可以使用dinic算法和EK算法:
分别对着模板敲了一遍:
dinic:
View Code
可以使用dinic算法和EK算法:
分别对着模板敲了一遍:
dinic:
#include<cstdio> #include<cstring> #include<algorithm> #define maxn 205 #include<queue> using namespace std; int map[maxn][maxn],p[maxn],n,m; bool flag[maxn]; bool bfs() { queue<int>q; memset(flag,0,sizeof flag); memset(p,-1,sizeof p); q.push(1); flag[1]=1; while(!q.empty()) { int now=q.front(); q.pop(); if(now==m) return 1; for(int i=1; i<=m; i++) if(map[now][i]>0&&!flag[i]) { flag[i]=1; p[i]=now; q.push(i); } } return 0; } void ek() { int u,flow=0,t; while(bfs()) { t=99999999; u=m; while(p[u]!=-1) { t=min(t,map[p[u]][u]); u=p[u]; } flow+=t; u=m; while(p[u]!=-1) { map[p[u]][u]-=t; map[u][p[u]]+=t; u=p[u]; } } printf("%d\n",flow); } int main() { int a,b,f; while(scanf("%d%d",&n,&m)!=EOF) { memset(map,0,sizeof map); while(n--) { scanf("%d%d%d",&a,&b,&f); map[a][b]+=f; } ek(); } return 0; }
View Code
相关文章推荐
- POJ 1273 Drainage Ditches
- 最大流 POJ 1273
- poj 1273 网络流简单模板
- poj 1273 & hdu 1532 Drainage Ditches(最大流 )EK,dinic模板
- poj 1273 Drainage Ditches
- Drainage Ditches (poj 1273 && hdu 1532 网络流之Ford-Fulkerson)
- poj 1273 最大流 基础题 (内有最详细的最大流分析,很好入门)
- POJ 1273(ISAP+邻接表)
- poj 1273Drainage Ditches 最大流
- POJ:1273 Drainage Ditches(网络最大流模版题)
- POJ1273 dinic Pascal模板
- poj 1273 Drainage Ditches | hdoj 1532
- [poj] 1273 Drainage Ditches
- poj 1273 Drainage Ditches
- poj 1273 (nyoj 323) Drainage Ditches : 最大流
- POJ 1273 最大流入门题 Edmonds_Karp算法
- POJ1273——Drainage Ditches//模板还没搞清楚待定
- poj 1273 Drainage Ditches 【图论-网络流-最大流-Ford-Fulkerson】
- poj1273 网络流 Dinic
- POJ 1273 Drainage Ditches 网络流入门2