标签:des style http color io ar java for sp
3 2 1 2 1 1 3 1 1 0
2 0
#include <stdio.h> #include <string.h> #include <stdlib.h> #define inf 999999 int map[110][110]; int vis[110]; int dis[110]; int sum; void prim(int n) { int i,j,k; int min; sum=0; memset(vis,0,sizeof(vis)); for(i=1; i<=n; i++) dis[i]=map[1][i]; vis[1]=1; for(i=2; i<=n; i++) { min=inf; for(j=1; j<=n; j++) { if(min>dis[j]&&!vis[j]) { k=j; min=dis[j]; } } vis[k]=1; sum+=min; for(j=1; j<=n; j++) { if(map[k][j]<dis[j]&&!vis[j]) dis[j]=map[k][j]; } } printf("%d\n",sum); } int main() { int n,m,i,j; int u,v,w; while(~scanf("%d %d",&n,&m)) { if(m<n-1) { printf("0\n"); } else { for(i=1; i<=n; i++) for(j=1; j<=n; j++) { if(i==j) map[i][j]=0; else map[i][j]=inf; } while(m--) { scanf("%d %d %d",&u,&v,&w); if(w<map[u][v])//这一步的意思是为了防止类似2,3,4和2,3,3这种情况的出现 map[u][v]=map[v][u]=w; } prim(n); } } return 0; }
标签:des style http color io ar java for sp
原文地址:http://blog.csdn.net/u013486414/article/details/40188987