uva10034Freckles - prime最小生成树
2012-07-16 21:35
393 查看
一个换行符的问题wr十几次 - -
各种debug诶
各种debug诶
#include<stdio.h> #include<math.h> #define INF 1000000000 struct point { double x,y; } P[105]; double D(point a,point b) { return sqrt((b.y-a.y)*(b.y-a.y)+(b.x-a.x)*(b.x-a.x)); } double mp[105][105]; int main() { int T,n,i,j,k; double X,Y,dist,min,answer; scanf("%d",&T); while(T--) { scanf("%d",&n); for(i=1;i<=n;i++) for(j=1;j<=n;j++) mp[i][j]=INF; for(i=1;i<=n;i++) { scanf("%lf%lf",&P[i].x,&P[i].y); for(j=1;j<=i;j++) { dist=D(P[i],P[j]); mp[i][j]=mp[j][i]=dist; } } // for(i=1;i<=n;i++) // { // for(j=1;j<=n;j++) // printf("%.1lf\t",mp[i][j]); // printf("\n"); // } // printf("!\n"); // system("pause"); for(i=1;i<=n;i++) mp[0][i]=mp[1][i]; // for(i=1;i<=n;i++) printf("mp[0][%d]=%.1lf\t",i,mp[0][i]);printf("\n"); answer=0; for(k=i=1;i<=n;i++) { min=INF; for(j=1;j<=n;j++) { // printf("mp[0][j]=%.1lf\tmin=%.1lf\t\n",mp[0][j],min); if(mp[0][j]!=0&&min>mp[0][j]) { min=mp[0][j]; k=j; } } // printf("min=%.1lf k=%d\n",min,k); answer+=mp[0][k]; mp[0][k]=0; for(j=1;j<=n;j++) if(mp[0][j]!=0&&mp[0][j]>mp[k][j]) mp[0][j]=mp[k][j]; } // for(i=1;i<=n;i++) // { // for(j=1;j<=n;j++) // printf("%.1lf\t",mp[i][j]); // printf("\n"); // } printf("%.2lf\n",answer); if(T) printf("\n"); } return 0; }
相关文章推荐
- uva10034 - Freckles(最小生成树)
- uva 10034 Freckles 最小生成树
- uva 10034 Freckles 最小生成树
- UVA10034 - Freckles(最小生成树)
- UVa 10034 Freckles (最小生成树+kruskal)
- UVA 10034 Freckles 【最小生成树】
- UVA 10034 - Freckles(最小生成树)
- Freckles - UVa 10034 最小生成树
- UVA 10034 Freckles 最小生成树
- 【UVA 10034 Freckles】& Kruskal & 最小生成树
- uva 10034 Freckles(最小生成树Kruskal)
- UVa10034/POJ2560_Freckles(最小生成树)(小白书图论专题)
- UVa 10034 - Freckles (最小生成树模板题)
- uva 10034 Freckles(最小生成树Kruskal)
- 10034 - Freckles 克鲁斯克尔最小生成树!~
- uva 10034(最小生成树)
- 10034 - Freckles(最小生成树)
- uva 10034(最小生成树)
- uva 4138【最小生成树prime算法】
- 最小生成树-Uva10034