标签:des io os java for sp 数据 on amp
畅通工程?
#include <stdio.h> #include<string.h> #include <algorithm> using namespace std; struct Road { int c1, c2, cost; }; Road road[110]; bool cmp(Road a,Road b) { return a.cost<b.cost; } int city[110]; int find(int a) { int r=a; while(city[r]!=r) r=city[r]; return r; } bool merge(int x, int y) { int fx,fy; fx = find(x); fy = find(y); if(fx == fy) return 0; else if(fx < fy) city[fy] = fx; else city[fx] = fy; return 1; } int main() { int n, m; while(scanf("%d %d", &m, &n) && m) { int i; for(i=1;i<=n;i++) { city[i]=i; } for(int i=0; i<m; ++i) scanf("%d %d %d", &road[i].c1, &road[i].c2, &road[i].cost); sort(road, road+m,cmp); int sum = 0, count = 0; for(int i=0; i<m; i++) { if(merge(road[i].c1, road[i].c2)) { count ++; sum += road[i].cost; } if(count == n-1) break; } if(count == n-1) printf("%d\n", sum); else printf("?\n"); } return 0; }
标签:des io os java for sp 数据 on amp
原文地址:http://blog.csdn.net/holyang_1013197377/article/details/40047729