【最大流(EK)】hdu 3549 Flow Problem
来源:互联网 发布:国际顶级域名干嘛的 编辑:程序博客网 时间:2024/05/29 04:46
http://acm.hdu.edu.cn/showproblem.php?pid=3549
分析:最大网络流的EK算法
#include <iostream>#include <cstdio>#include <cstring>#include <queue>using namespace std;const int NM=20;const int MAX=0xfffffff;int a[NM][NM],pre[NM],n,m,ans;bool vis[NM];bool BFS(int s,int d){queue<int>q1;memset(vis,0,sizeof(vis));memset(pre,0,sizeof(pre));q1.push(s);pre[s]=s;vis[s]=1;while(!q1.empty()){int t=q1.front();q1.pop();for(int i=1;i<=n;i++){if(!vis[i]&&a[t][i]){vis[i]=1;pre[i]=t;if(i==d) return true;q1.push(i);}}}return false;}void EK(int s,int d){int v,i;while(BFS(s,d)){v=MAX;for(i=d;i!=s;i=pre[i]){if(v>a[pre[i]][i])v=a[pre[i]][i];}for(i=d;i!=s;i=pre[i]){a[pre[i]][i]-=v;a[i][pre[i]]+=v; //逆向回溯}ans+=v;}}int main(){int T,i,x,y,v,j;scanf("%d",&T);j=1;while(T--){scanf("%d%d",&n,&m);memset(a,0,sizeof(a));for(i=0;i<m;i++){scanf("%d%d%d",&x,&y,&v);a[x][y]+=v; //重边}ans=0;EK(1,n);printf("Case %d: %d\n",j++,ans);}return 0;}
0 0
- hdu 3549 Flow Problem (EK 最大流)
- 【最大流(EK)】hdu 3549 Flow Problem
- hdu 3549 Flow Problem(最大流EK算法模板)
- HDU 3549 Flow Problem ( 最大流 -EK 算法)
- hdu 3549 Flow Problem (最大流—EK—Dinic)
- HDU 3549 Flow Problem【最大流模板题,EK算法】
- hdu 3549 Flow Problem(最大流 EK,sap)
- HDU 3549 Flow Problem(最大流裸题,EK解法)
- hdu3549-Flow Problem(最大流&EK)
- HDU 3549 Flow Problem(最大流+EK邻接表||邻接矩阵||dinic算法模板比较)
- HDU 3549 Flow Problem 网络流 EK
- hdu 3549 Flow Problem(EK)
- HDU- 3549-Flow Problem (网络流之 EK)
- hdu 3549 Flow Problem 最大流入门 EK算法
- HDU 3549 Flow Problem 最大流 最小增广路 EK算法 传说中的入门算法
- HDU3549:Flow Problem(最大流 & Ek算法 + Dinic算法)
- hdu3549 Flow Problem--EK算法 & 最大流
- hdu - 3549 - Flow Problem(最大流)
- java学习笔记<七>初始化块与构造器
- 我那些逝去的青春
- 最长有序子序列 Longest Ordered Subsequence POJ2533
- 用于操纵字符串的的String类
- trait特性萃取机
- 【最大流(EK)】hdu 3549 Flow Problem
- PAT1004
- Fragment使用
- 新年新的安排
- 项目总结—jQuery EasyUI-DataGrid动态加载表头
- 遍历Map和遍历List方法
- Window Server 2008 R2 +IIS7.5 部署WCF Rest问题
- queue
- 线段树。。。POJ 2777