HDU 3870 Catch the Theves 2011 Multi-University Training Contest 4 - Host by SDU
来源:互联网 发布:php cms 源码小说 编辑:程序博客网 时间:2024/04/29 21:23
/*第一道在平面图中 把最大流问题转换为最短路问题的题目*/#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<queue>#include<stack>#include<map>#include<algorithm>using namespace std;const int maxn=660000;const int MAXM=1000009;const int inf=999999999;int n,m;struct Edge{int v,w;int next;}edge[4*maxn];int e,top;int first[maxn];int vis[maxn];int Stack[maxn];void addedge(int u,int v,int w){edge[e].v=v;edge[e].w=w;edge[e].next=first[u];first[u]=e++;edge[e].v=u;edge[e].w=w;edge[e].next=first[v];first[v]=e++;}int d[maxn];int a[450][450];void spfa(){for(int i=0;i<=n*n+5;i++){d[i]=inf;vis[i]=0;}d[n*n]=0;int front=-1,rear=-1;Stack[++rear]=n*n;while(front<rear){int x=Stack[(++front)%maxn];vis[x]=0;for(int k=first[x];k!=-1;k=edge[k].next){if(d[edge[k].v]>d[x]+edge[k].w){d[edge[k].v]=d[x]+edge[k].w;if(!vis[edge[k].v]){vis[edge[k].v]=1;Stack[(++rear)%maxn]=edge[k].v;}}}}printf("%d\n",d[n*n+1]);}int main(){int Case;scanf("%d",&Case);while(Case--){memset(first,-1,sizeof(first));scanf("%d",&n);for(int i=0;i<n;i++)for(int j=0;j<n;j++)scanf("%d",&a[i][j]);for(int i=0;i<n-1;i++){addedge(n*n,i,a[0][i]);addedge(n*n,i*(n-1)+n-2,a[i][n-1]);addedge(i*(n-1),n*n+1,a[i][0]);addedge((n-2)*(n-1)+i,n*n+1,a[n-1][i]);}for(int i=0;i<n-1;i++)for(int j=0;j<n-1;j++){if(i+1<n-1)addedge(i*(n-1)+j,(i+1)*(n-1)+j,a[i+1][j]);if(j+1<n-1)addedge(i*(n-1)+j,i*(n-1)+j+1,a[i][j+1]);}spfa();}}
- HDU 3870 Catch the Theves 2011 Multi-University Training Contest 4 - Host by SDU
- HDU 3873 Invade the Mars 2011 Multi-University Training Contest 4 - Host by SDU
- HDU 3874 Necklace 2011 Multi-University Training Contest 4 - Host by SDU 树状数组+离散化
- HDU HDU 3861 The King’s Problem 2011 Multi-University Training Contest 3 - Host by BIT
- HDU 3974 Assign the task 2011 Multi-University Training Contest 14 - Host by FZU 线段树
- 2011 Multi-University Training Contest 1 - Host by HNU
- 2011 Multi-University Training Contest 3 - Host by BIT
- HDU 3829 Cat VS Dog 2011 Multi-University Training Contest 1 - Host by HNU
- HDU 3830 Checkers 2011 Multi-University Training Contest 1 - Host by HNU
- HDU 3902 Swordsman 2011 Multi-University Training Contest 7 - Host by ECNU 计算几何
- HDU 3972 1 M possible 2011 Multi-University Training Contest 14 - Host by FZU
- 2011 Multi-University Training Contest 3 - Host by BIT No Gambling 也就是hdu 3863
- 2011 Multi-University Training Contest 10 - Host by HRBEU hdu 3933 Dark Parth
- Hdu 3936 FIB Query[矩阵快速幂](2011 Multi-University Training Contest 10 - Host by HRBEU)
- hdu 3496 Watch The Movie //2010 ACM-ICPC Multi-University Training Contest(6)——Host by BIT
- 2009 Multi-University Training Contest 1 - Host by TJU
- 2009 Multi-University Training Contest 5 - Host by NUDT
- 2009 Multi-University Training Contest 8 - Host by BJNU
- ubuntu环境下802.1x+BAS二次认证连接校园网
- 计算几何资料
- c 内存分配和内存对齐全面探讨
- POJ 2352 Stars 树状数组
- POJ--1113[Wall] 凸包周长+圆的周长
- HDU 3870 Catch the Theves 2011 Multi-University Training Contest 4 - Host by SDU
- Notes Part I: Enumerations and Iterations.
- 注意身体
- 关键词“套接字”的解释
- js编程体会之放弃
- Ping 网络是否连得通
- js良好的程序设计原则
- LINUX几个强大的编辑器
- 带缺省参数的重复声明