标签:des style blog http color os io strong
Time Limit: 1000MS | Memory Limit: 65536K | |
Total Submissions: 25773 | Accepted: 8374 |
Description
Input
Output
Sample Input
2 0 0 3 4 3 17 4 19 4 18 5 0
Sample Output
Scenario #1 Frog Distance = 5.000 Scenario #2 Frog Distance = 1.414
Source
1 #include <stdio.h> 2 #include <math.h> 3 const int INF=1010101010; 4 double map[1010][1010],node[1010],Min; 5 int n,vis[1010]; 6 7 double Max(double a,double b) 8 { 9 return a>b?a:b; 10 } 11 12 void dijkstra() 13 { 14 int i,j,k,m; 15 for (i=0; i<n; i++) 16 { 17 node[i]=map[0][i]; 18 vis[i]=0; 19 } 20 vis[0]=1; 21 for (k=0; k<n; k++) 22 { 23 Min=INF; 24 m=-1; 25 for (i=1; i<n; i++) 26 if (!vis[i]) 27 { 28 if (Min>node[i]) 29 { 30 Min=node[i]; 31 m=i; 32 } 33 } 34 if (m==-1) 35 break; 36 vis[m]=1; 37 //tm=m; 38 for (i=0; i<n; i++) 39 { 40 if (!vis[i]&&Max(node[m],map[m][i])<node[i]) 41 node[i]=Max(node[m],map[m][i]); 42 43 } 44 } 45 } 46 47 int main () 48 { 49 double a[210],b[210]; 50 int count=0,i,j; 51 while (scanf("%d",&n),n) 52 { 53 for (i=0; i<n; i++) 54 { 55 scanf("%lf%lf",&a[i],&b[i]); 56 } 57 for (i=0; i<n; i++) 58 { 59 for (j=0; j<n; j++) 60 { 61 map[i][j]=map[j][i]=(a[i]-a[j])*(a[i]-a[j])+(b[i]-b[j])*(b[i]-b[j]); 62 63 } 64 } 65 dijkstra(); 66 printf("Scenario #%d\n", ++count); 67 printf("Frog Distance = %.3f\n\n", sqrt(node[1])); 68 } 69 return 0; 70 }
poj 2253 Frogger (dijkstra最短路),布布扣,bubuko.com
poj 2253 Frogger (dijkstra最短路)
标签:des style blog http color os io strong
原文地址:http://www.cnblogs.com/qq-star/p/3921822.html