摘要:
这道题比1232多了一个条件就是距离,也就是边的权值,建议参考Kruskal算法http://baike.baidu.com/view/247951.htm思想就是以前做题所用的贪心思想附代码: 1 #include<stdio.h> 2 #include<string.h> 3 #include <algorithm> 4 #define max(a,b) (a)>(b)?(a):(b) 5 #define min(a,b) (a)<(b)?(a):(b) 6 using namespace std; 7 8 const int MAXN=10 阅读全文
摘要:
http://acm.hdu.edu.cn/showproblem.php?pid=1232有n个城市,现在已经有了k条路,求最少还要多少条路可以让他们全部链接起来算法核心:并查集,吧可以连通的连在一起,最后求共有几个大块先做预处理P[i]=i;然后就是 1 int find(int x) 2 { 3 return x==p[x]?x:find(p[x]); 4 } 5 void merg(int x,int y) 6 { 7 int a=find(x); 8 int b=find(y); 9 if(a!=b)10 {11 p[a]=b;... 阅读全文