hdu3549 网络流ek模板
来源:互联网 发布:网络惩罚男朋友的招数 编辑:程序博客网 时间:2024/05/23 15:43
Description
Network flow is a well-known difficult problem for ACMers. Given a graph, your task is to find out the maximum flow for the weighted directed graph.
Input
The first line of input contains an integer T, denoting the number of test cases.
For each test case, the first line contains two integers N and M, denoting the number of vertexes and edges in the graph. (2 <= N <= 15, 0 <= M <= 1000)
Next M lines, each line contains three integers X, Y and C, there is an edge from X to Y and the capacity of it is C. (1 <= X, Y <= N, 1 <= C <= 1000)
For each test case, the first line contains two integers N and M, denoting the number of vertexes and edges in the graph. (2 <= N <= 15, 0 <= M <= 1000)
Next M lines, each line contains three integers X, Y and C, there is an edge from X to Y and the capacity of it is C. (1 <= X, Y <= N, 1 <= C <= 1000)
Output
For each test cases, you should output the maximum flow from source 1 to sink N.
题意就是裸网络流,直接ek搞过去即可
#include<cstdio>#include<cstring>#include<algorithm>#include<iostream>#include<vector>#include<queue>using namespace std;const int inf=0x3f3f3f3f;int mp[20][20];int flow[20];int pre[20];int n,m;int st,ed;int bfs(){memset(pre,-1,sizeof(pre));//memset(flow,0,sizeof(flow));pre[st]=0;flow[st]=inf;queue<int> q;q.push(st);while(!q.empty()){int t=q.front();q.pop();if(t==ed) break;for(int i=1;i<=n;i++){if(i!=st&&pre[i]==-1&&mp[t][i]){pre[i]=t;flow[i]=min(flow[t],mp[t][i]);q.push(i);}}}if(pre[ed]!=-1) return flow[ed];else return -1;}int calc(){int pr,maxn=0,now,step;while((step=bfs())!=-1){maxn+=step;now=ed;while(now!=st){pr=pre[now];mp[pr][now]-=step;mp[now][pr]+=step;now=pr;}}return maxn;}int main(){int x,y,t,T,tt=0;scanf("%d",&T);while(T--){memset(mp,0,sizeof(mp));scanf("%d %d",&n,&m);for(int i=0;i<m;i++){scanf("%d %d %d",&x,&y,&t);mp[x][y]+=t;}st=1,ed=n;printf("Case %d: %d\n",++tt,calc());}return 0;}
0 0
- hdu3549 网络流ek模板
- 网络流dinic模板 hdu3549
- hdu3549 Flow Problem--EK算法 & 最大流
- hdu3549-Flow Problem(最大流&EK)
- poj 1149 : PIGS (网络流,EK模板)
- 网络流的EK算法模板
- EK算法网络流模板hdu1532
- 网络流EK算法(模板)
- HDU3549 - Flow Problem(模板网络流 + Ford-Fulkerson算法)
- HDU3549 Flow Problem 【网络流E-K算法模板】
- hdu3549 网络流
- hdu3549 网络流
- hdu3549 Flow Problem 网络最大流的三种写法(Ek,Dinic(邻接矩阵,邻接表),Isap)
- HDU3549:Flow Problem(最大流 & Ek算法 + Dinic算法)
- hdu3549 最大流模板题
- 【网络流】hdu3549 Flow Problem
- 【网络流】最大流:Drainage Ditches【EK模板】
- 【网络流】最大流:PIGS【EK模板、建图题】
- 判断div滑动到底部的scroll代码
- 关于inputStream.available()与HttpURLConnection.getContentLength()方法获取下载文件的大小
- jquery基础知识
- 闭包
- java之命令行参数
- hdu3549 网络流ek模板
- 《Testing with Xcode》第五章——Debugging Tests
- HDU-2063-过山车【匈牙利算法】【二分匹配】
- SpringSide 3 中的安全框架
- 详解https是如何确保安全的?
- c++ const总结
- Java中Filter、Listener,拦截器的学习,listener、 filter、servlet 加载顺序及其详解
- LeetCode Triangle
- 【嵌入式学习日记】2016年8月17日