博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU 1532 Drainage Ditches 分类: Brush Mo...
阅读量:5975 次
发布时间:2019-06-20

本文共 2852 字,大约阅读时间需要 9 分钟。

Drainage Ditches

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 8861    Accepted Submission(s): 4141
Problem Description
Every time it rains on Farmer John's fields, a pond forms over Bessie's favorite clover patch. This means that the clover is covered by water for awhile and takes quite a long time to regrow. Thus, Farmer John has built a set of drainage ditches so that Bessie's clover patch is never covered in water. Instead, the water is drained to a nearby stream. Being an ace engineer, Farmer John has also installed regulators at the beginning of each ditch, so he can control at what rate water flows into that ditch.
Farmer John knows not only how many gallons of water each ditch can transport per minute but also the exact layout of the ditches, which feed out of the pond and into each other and stream in a potentially complex network.
Given all this information, determine the maximum rate at which water can be transported out of the pond and into the stream. For any given ditch, water flows in only one direction, but there might be a way that water can flow in a circle.
 
Input
The input includes several cases. For each case, the first line contains two space-separated integers, N (0 <= N <= 200) and M (2 <= M <= 200). N is the number of ditches that Farmer John has dug. M is the number of intersections points for those ditches. Intersection 1 is the pond. Intersection point M is the stream. Each of the following N lines contains three integers, Si, Ei, and Ci. Si and Ei (1 <= Si, Ei <= M) designate the intersections between which this ditch flows. Water will flow through this ditch from Si to Ei. Ci (0 <= Ci <= 10,000,000) is the maximum rate at which water will flow through the ditch.
 
Output
For each case, output a single integer, the maximum rate at which water may emptied from the pond.
 
Sample Input
 
5 4 1 2 40 1 4 20 2 4 20 2 3 30 3 4 10
 
Sample Output
 
50
 
题意不说了,这是网络流经典入门题,最大的坑就是,在最短路题目里面,重边取最小,在网络流里面,重边就相加

WA了N次,才发现这个严重的问题

#include
#include
#include
#define min(a,b) a>b?b:ausing namespace std;int mi[35][5];int vis[10005];int m;int g[1005][1005];int dfs(int si,int ti,int f){ if(si==ti) return f; vis[si] = 1; for(int i=1;i<=m;i++) { if(!vis[i] && g[si][i]>0) { int d = dfs(i,ti,min(f,g[si][i])); if(d) { g[si][i]-=d; g[i][si]+=d; return d; } } } return 0;}int find(int s, int t){ int res = 0; for(;;) { memset(vis,0,sizeof(vis)); int f; f = dfs(s,t,INT_MAX); if(f==0) return res; res+=f; }}int main(){ int a, b, c; int n; while(scanf("%d%d",&n,&m)!=EOF) { memset(g,0,sizeof(g)); for(int i=1;i<=n;i++) { scanf("%d%d%d",&a,&b,&c); g[a][b] += c; } printf("%d\n",find(1,m)); } return 0;}

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://www.cnblogs.com/you-well-day-fine/p/4671648.html

你可能感兴趣的文章
STORM_0002_在做好的zookeeper集群上搭建storm的开发环境
查看>>
Java命名规则
查看>>
《Python从小白到大牛》第7章 运算符
查看>>
博科:毫不迟疑地入软件网络时代
查看>>
玩转开放式虚拟格式,实战迁移虚拟机到vSphere 5
查看>>
轻松实现远程批量拷贝文件脚本(女学生作品)
查看>>
Nmap在pentest box中的扫描及应用
查看>>
测试组合索引
查看>>
四、物理优化(2)索引视图
查看>>
【沟通之道】头脑风暴-女人的心思你别猜
查看>>
redux-form(V7.4.2)笔记(一)
查看>>
钱趣多风控新举措:源头选择与物理隔离
查看>>
puppet最新源码包安装学习笔记
查看>>
vector容器与find算法
查看>>
烂泥:kickstart无人值守安装CentOS6.5
查看>>
Windows Phone 8 开发资源汇总
查看>>
互联网趋势关键词:交流,为价值付费,资源整合
查看>>
阿里钉钉,马云旗下的又一个千亿美金产品?
查看>>
Oracle 11gR2学习之三(创建用户及表空间、修改字符集和Oracle开机启动)
查看>>
熟练掌握Word2003中的突出显示功能
查看>>