bzoj1001
来源:互联网 发布:阿里云免费建站 编辑:程序博客网 时间:2024/05/07 05:21
直接网络流。。
/************************************************************** Problem: 1001 User: OZY123 Language: C++ Result: Accepted Time:2236 ms Memory:131024 kb****************************************************************/ #include<cstdio>#include<cstring>const int N=1005*1005;const int MAX=1<<27;int n,m;struct qq{ int x,y; int last; int z,other;}s[N*3*2];int last[N],num;int init2 (int x,int y,int z){ num++; s[num].x=x;s[num].y=y;s[num].z=z; s[num].last=last[x];last[x]=num; return num;}void init1 (int x,int y,int z){ int num1=init2(x,y,z),num2=init2(y,x,z); s[num1].other=num2;s[num2].other=num1; return ;}void init (){ num=0; memset(last,-1,sizeof(last)); int a; scanf("%d%d",&n,&m); for (int u=1;u<=n;u++) for (int i=1;i<m;i++) { scanf("%d",&a); init1((u-1)*m+i,(u-1)*m+i+1,a); } for (int u=1;u<n;u++) for (int i=1;i<=m;i++) { scanf("%d",&a); init1((u-1)*m+i,u*m+i,a); } for (int u=1;u<n;u++) for (int i=1;i<m;i++) { scanf("%d",&a); init1((u-1)*m+i,u*m+i+1,a); }}int h[N],q[N];int st,ed;bool bt (){ memset(h,-1,sizeof(h)); st=1;ed=2; q[st]=1;h[1]=1; while (st!=ed) { int x=q[st]; //printf("%d\n",x); for (int u=last[x];u!=-1;u=s[u].last) { int y=s[u].y; if (s[u].z>0&&h[y]==-1) { h[y]=h[x]+1; q[ed]=y; ed++; if (ed>=N-1) ed=1; } } st++; if (st>=N-1) st=1; } if (h[n*m]==-1) return false; return true;}int mymin (int x,int y){ return x<y?x:y;}int find (int x,int f){ if (x==n*m) return f; int s1=0; for (int u=last[x];u!=-1;u=s[u].last) { int y=s[u].y; if (s1<f&&h[y]==(h[x]+1)&&s[u].z>0) { int ff=find(y,mymin(f-s1,s[u].z)); s1+=ff; s[u].z-=ff; s[s[u].other].z+=ff; } } if (s1==0) h[x]=-1; return s1;}void solve (){ int ans=0; while (bt()==true) ans=ans+find(1,MAX); printf("%d\n",ans);}int main(){ init(); /*for (int u=1;u<=num;u++) { if (s[u].z==0) continue; printf("%d %d %d\n",s[u].x,s[u].y,s[u].z); }*/ solve(); return 0;}
1 0
- BZOJ1001
- BZOJ1001
- bzoj1001
- bzoj1001
- bzoj1001
- BZOJ1001题解
- bzoj1001 spfa
- BZOJ1001(狼抓兔子)
- 【BZOJ1001】狼抓兔子
- BZoj1001狼抓兔子
- 【bzoj1001】【狼抓兔子】
- BZOJ1001狼抓兔子
- [bzoj1001]狼抓兔子
- 【BZOJ1001】狼抓兔子
- bzoj1001 -- 最短路
- BZOJ1001狼抓兔子
- 【BZOJ1001】【BJOI2006】狼抓兔子
- bzoj1001 平面图转对偶图
- MySQL命令show databases:显示所有数据库
- Net 开源项目资源大全
- ps使用仿制图章工具,图案图章工具
- BuildConfig:Gradle自定义你的BuildConfig
- 记录架构文章
- bzoj1001
- MySQL命令drop database:删除数据库
- centos7解决中文乱码问题
- iOS 简单分栏效果
- SpringMVC与freemaker结合关键配置
- Android系统开发之唤醒与功耗
- android随机生成验证码。
- ImageLoader简单配置
- mysql索引总结----mysql 索引类型以及创建