标签:des style blog http color java os io strong
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1162
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 6866 Accepted Submission(s): 3469
1 #include <iostream> 2 #include <cstdio> 3 #include <cmath> 4 using namespace std; 5 double node[110],map[110][110],Min,n; 6 const double INF=999999999; 7 8 double prim() 9 { 10 int vis[110]= {0}; 11 int tm=1,m; 12 double sum=0; 13 vis[tm]=1; 14 node[tm]=0; 15 for (int k=2; k<=n; k++) 16 { 17 Min=INF; 18 for (int i=1; i<=n; i++) 19 if (!vis[i]) 20 { 21 if (node[i]>map[tm][i]) 22 node[i]=map[tm][i]; 23 if (Min>node[i]) 24 { 25 Min=node[i]; 26 m=i; 27 } 28 } 29 vis[m]=1; 30 tm=m; 31 sum+=node[m]; 32 } 33 //for (int i=1; i<=n; i++) 34 //sum+=node[i]; 35 return sum; 36 } 37 38 int main () 39 { 40 double a[110],b[110]; 41 while (cin>>n) 42 { 43 for (int i=1; i<=n; i++) 44 cin>>a[i]>>b[i]; 45 for (int i=1; i<=n; i++) 46 { 47 node[i]=INF; 48 for (int j=1; j<=n; j++) 49 map[i][j]=INF; 50 } 51 for (int i=1; i<=n; i++) 52 { 53 for (int j=1; j<=n; j++) 54 { 55 map[i][j]=map[j][i]=sqrt((a[i]-a[j])*(a[i]-a[j])+(b[i]-b[j])*(b[i]-b[j])); 56 } 57 } 58 printf ("%.2lf\n",prim()); 59 } 60 return 0; 61 }
hdu 1162 Eddy's picture(最小生成树算法)
标签:des style blog http color java os io strong
原文地址:http://www.cnblogs.com/qq-star/p/3931639.html