标签:des style blog http color io os ar for
http://poj.org/problem?id=2485
Description
Input
Output
Sample Input
1 3 0 990 692 990 0 179 692 179 0
Sample Output
692
Hint
最小生成树问题:(用prim算法)
/*题意:Flatopia岛要修路,这个岛上有n个城市,要求修完路后,各城市之间可以相互到达,且修的总
路程最短.
求所修路中的最长的路段*/
#include <iostream> #include <stdio.h> #include <string.h> #define INF 0x3f3f3f3f using namespace std; int map[501][501]; int n,dis[501],v[501]; void prim() { int min,sum=-1,k; for(int i=1; i<=n; i++) { v[i]=0; dis[i]=INF; } for(int i=1; i<=n; i++) dis[i]=map[1][i]; v[1]=1; for(int j=1; j<n; j++) { min=INF; for(int i=1; i<=n; i++) { if(v[i]==0&&dis[i]<min) { k=i; min=dis[i]; } } if(sum<min) sum=min; v[k]=1; for(int i=1; i<=n; i++) { if(v[i]==0&&map[k][i]<dis[i]) { dis[i]=map[k][i]; } } } cout<<sum<<endl; } int main() { int T; scanf("%d",&T); while(T--) { scanf("%d",&n); for(int i=1; i<=n; i++) { for(int j=1; j<=n; j++) { scanf("%d",&map[i][j]); } } prim(); } return 0; }
标签:des style blog http color io os ar for
原文地址:http://www.cnblogs.com/zhangmingcheng/p/3969074.html