hdu 1532
来源:互联网 发布:linux追加分区大小 编辑:程序博客网 时间:2024/06/03 23:18
#include<iostream>#include <cstdio>#include <queue>#include <algorithm>#include <cstring>#pragma comment(linker,"/stack:102400000,102400000")#define inf 99999999using namespace std;int e,head[1005];int level[1005];struct node{ int to,val; int next;} edge[2005];void add_edge(int x,int y,int w){ edge[e].to=x; edge[e].val=0; edge[e].next=head[y]; head[y]=e++; edge[e].to=y; edge[e].val=w; edge[e].next=head[x]; head[x]=e++;}int dfs(int now,int maxf,int t){ int ret=0,f,k; if(now==t) return maxf; for(k=head[now]; k!=-1; k=edge[k].next) { if(level[edge[k].to]==level[now]+1&&edge[k].val>0) { f=dfs(edge[k].to,min(maxf-ret,edge[k].val),t); edge[k].val-=f; edge[k^1].val+=f; ret+=f; if(ret==maxf) return ret; } } if(ret==0) level[now]=0; return ret;}bool bfs(int s,int t){ int top,k; queue<int> q; q.push(s); memset(level,0,sizeof(level)); level[s]=1; while(!q.empty()) { top=q.front(); q.pop(); if(top==t) return true; for(k=head[top]; k!=-1; k=edge[k].next) { if(!level[edge[k].to]&&edge[k].val>0) { level[edge[k].to]=level[top]+1; q.push(edge[k].to); } } } return false;}int dinic(int s,int t){ int ans=0; while(bfs(s,t)) { ans+=dfs(s,inf,t); } return ans;}int main(){ int i,n,m; int x,y,w; while(scanf("%d%d",&n,&m)>0) { e=0; memset(head,-1,sizeof(head)); for(i=1; i<=n; i++) { scanf("%d%d%d",&x,&y,&w); add_edge(x,y,w); } printf("%d\n",dinic(1,m)); } return 0;}
网络流的 入门题,没什么好说的
0 0
- hdu 1532
- hdu 1532
- HDU 1532
- HDU 1532
- hdu 1532
- HDU 1532
- hdu 1532
- hdu-1532
- HDU 1532 Drainage Ditches
- EK hdu 1532
- hdu 1532 Drainage Ditches
- HDU 1532 Drainage Ditches
- hdu 1532 Drainage Ditches
- HDU 1532 Drainage Ditches
- hdu 1532 Drainage Ditches
- hdu 1532Drainage Ditches
- hdu 1532 Drainage Ditches
- hdu 1532 Drainage Ditches
- STL list链表的用法详解
- OCP 1Z0 053 218
- 认知描述程序的实例化(1)
- Mybatis笔记之二 -- 简单的增删改查
- 的符合风格化风格化风格化风格化风格化风格化发更换
- hdu 1532
- java 线程同步
- 程序员面试经典问题集以及offer,三方协议等常识
- Codeforces 48C The Race 模拟题
- 斩不断的平台梦,时隔3年,再次做dz平台
- 数学之路-python计算实战(22)-机器视觉-sobel非线性滤波
- [深入浅出Cocoa]之消息(二)-详解动态方法决议(Dynamic Method Resolution)
- Eclipse中Maven插件的安装与配置
- Android 获取Keystore 的SHA