USACO 草地排水 网络流
来源:互联网 发布:软件工作计划 编辑:程序博客网 时间:2024/04/20 16:01
#include<stdio.h>#include<stdlib.h>int c[201][201],f[201][201];int d[1000][2],p[201];int main(){freopen("ditch.in", "r", stdin);freopen("ditch.out", "w", stdout);int i,j,k,m,n;int x,y,z,flag=1;int s,t,min;scanf("%d%d",&m,&n);for(i=1;i<=m;i++){scanf("%d%d%d",&x,&y,&z);c[x][y]+=z;}while(flag){flag=0;for(i=1;i<=n;i++)p[i]=1;s=0;t=1;d[1][0]=1;d[1][1]=0;p[1]=0;while(s<t){s++;x=d[s][0];for(i=1;i<=n;i++)if(p[i] && (c[x][i]>f[x][i] || f[i][x]>0)){p[i]=0;d[++t][0]=i;d[t][1]=s;if(i==n){flag=1;break;}} if(flag==1)break;}if(!flag)break;min=1000000000;i=t;while(d[i][1]){y=d[i][0];x=d[d[i][1]][0];if(c[x][y]>f[x][y] && c[x][y]-f[x][y]<min)min=c[x][y]-f[x][y];else if(f[y][x]>0 && f[y][x]<min)min=f[y][x];i=d[i][1];}i=t;while(d[i][1]){y=d[i][0];x=d[d[i][1]][0];if(c[x][y]>f[x][y])f[x][y]+=min;elsef[y][x]-=min;i=d[i][1];}}int ans=0;for(i=2;i<=n;i++)ans+=f[1][i];printf("%d\n",ans);return 0;}
0 0
- USACO 草地排水 网络流
- 【CODEVS1993】【网络流】草地排水
- 草地排水_codevs1993_网络流
- 网络流(草地排水)
- USACO草地排水
- USACO Training 4.2.1 Drainage Ditches 草地排水 题解与分析<网络流DINIC算法>
- 网络流Sap+Gap(【USACO题库】4.2.1 Drainage Ditches草地排水 )
- codevs 草地排水问题 网络流
- #bzoj1084#草地排水(网络流)
- USACO 4.2 Drainage Ditches 草地排水(预流推进)
- USACO 4.2 草地排水 Drainage Ditches
- 【USACO4.2.1】草地排水 网络流 最大流
- [USACO4.2]草地排水(网络流最大流模板)
- CodeVS 1993 草地排水 E-K网络流初步
- codevs1993草地排水——第一次写网络流
- SSL 1403_草地排水_网络流
- 草地排水 (码一下自己的网络流板子)
- 网络流的初步应用[USACO4.2]草地排水
- 求赫夫曼编码的算法
- CentOS6.5_64bit下编译安装MySQL-5.6.23
- 轻松搞定Boost库的安装
- 继承类各成员和方法的初始化顺序_05
- 面试之-垃圾回收
- USACO 草地排水 网络流
- 40个重要的HTML5面试题及答案
- Inversion (hdu 4911 树状数组 || 归并排序 求逆序对)
- dd
- 关于Android系统ROM的debug-root模式说明
- ObjectC----几个常用的类
- 最小生成树之PRIM算法
- Unity3d 网络编程(三)(Unity3d内建网络简单服务器的建立)
- LeetCode 104: Maximum Depth of Binary Tree