POJ - 1273 Drainage Ditches (网络流入门题)
来源:互联网 发布:淘宝联盟api是什么 编辑:程序博客网 时间:2024/05/29 07:25
题目大意:
每当下雨,农夫最喜爱的养尊处优的地方周围就变成了一个池塘,这让他很不爽,所以决心要把这个问题解决掉,所以他就在四周建造了一些渠沟以便排水,更为巧妙地是可以把这水排到一个小溪处。
编号为1的节点作为池塘,编号为n的地方作为小溪。求最大排水量。
解析:
每当下雨,农夫最喜爱的养尊处优的地方周围就变成了一个池塘,这让他很不爽,所以决心要把这个问题解决掉,所以他就在四周建造了一些渠沟以便排水,更为巧妙地是可以把这水排到一个小溪处。
编号为1的节点作为池塘,编号为n的地方作为小溪。求最大排水量。
解析:
网络流算法的入门题,注意有重边,所以如果出现重边,就把那条路径加上重边,等价于把那条边给扩大了。
#include <cstdio>#include <cstring>#include <algorithm>#include <queue>using namespace std;const int INF = 0x3f3f3f3f;const int N = 205;int flow[N][N],cap[N][N];int a[N],p[N];int m,n;int maxflow(int s ,int t) {queue<int> que;memset(flow,0,sizeof(flow));int f = 0;while(true) {memset(a,0,sizeof(a));a[s] = INF;que.push(s);while(!que.empty()) {int u = que.front();que.pop();for(int v = 1; v <= n; v++) {if(!a[v] && cap[u][v] > flow[u][v]) {p[v] = u;que.push(v);a[v] = min(a[u],cap[u][v] - flow[u][v]);}}}if(a[t] == 0) {break;}for(int u = t; u != s; u = p[u]) {flow[p[u]][u] += a[t];flow[u][p[u]] -= a[t];}f += a[t];}return f;}int main() {int u,v,w;while(scanf("%d%d",&m,&n) != EOF) {memset(cap,0,sizeof(cap));for(int i = 0; i < m; i++) {scanf("%d%d%d",&u,&v,&w);cap[u][v] += w;}int ans = maxflow(1,n);printf("%d\n",ans);}return 0;}
0 0
- POJ - 1273 Drainage Ditches (网络流入门题)
- POJ 1273 Drainage Ditches(网络流入门)
- POJ 1273 Drainage Ditches 网络流入门2
- poj 1273 Drainage Ditches(网络流入门之最大流)
- POJ 1273 Drainage Ditches(最大流入门)
- POJ 1273 Drainage Ditches(最大流入门)
- POJ-Drainage Ditches-最大流入门题
- POJ 1273 Drainage Ditches(最大流入门题)
- POJ 1273 || HDU 1532 Drainage Ditches ,最大流入门题
- POJ 1273 Drainage Ditches 最大流入门题
- Poj 1273 Drainage Ditches【最大流入门题----Ford-Fulkerson】
- poj Drainage Ditches 1273 (最大流入门)
- POJ 1273 Drainage Ditches (最大流入门~)
- POJ-1273 Drainage Ditches(最大流入门)
- NYOJ 323 && HDU 1532 && POJ 1273 Drainage Ditches (网络流之最大流入门)
- poj 1273 Drainage Ditches 网络流最大流入门 ford-fulkerson
- [POJ 1273]Drainage Ditches——网络流最大流入门
- poj 1273 Drainage Ditches 【最大流入门 dinic算法】
- this指针
- 在android 模拟器中使用串口
- 浅谈markdown--(2)用法
- grunt使用
- ffmpeg结构体熟悉——AVIOContext
- POJ - 1273 Drainage Ditches (网络流入门题)
- (摘抄)VB中按钮控件的左对齐方法
- OneAPM产品试用
- 我是内闭型思考者。-11月有感
- 1.2 ASP.NET_入门_提交表单 p1
- Leetcode_13_Roman to Integer
- POJ-1211Traffic Lights
- 第13周项目 例1.3 输出平均成绩及优秀人数,不及格人数
- iOS 高级开发技巧 1.熟悉Objective-C (五) 用枚举表示状态、选项、状态码