Jungle Roads Kruskal模板
来源:互联网 发布:华网1588建站 编辑:程序博客网 时间:2024/05/17 01:01
#include <stdio.h>#include <cstring>#include <iostream>#include <algorithm>using namespace std;const int maxn=101;struct edge{ int from,to,w,next;} e[maxn<<1];int f[maxn];int t;void add(int i,int j,int w){ e[t].from=i; e[t].to=j; e[t].w=w; t++;}bool cmp(struct edge a,struct edge b){ if(a.w!=b.w) return a.w<b.w;}int find(int x){ if(x!=f[x]) f[x]=find(f[x]); return f[x];}void un(int x,int y){ x=find(x); y=find(y); if(x==y) return ; f[y]=x;}int main(){ int n,num,d; char c,city; while(scanf("%d",&n)==1 && n) { t=1; memset(e,0,sizeof(e)); for(int i=1; i<n; i++) { cin >> c >> num; while(num--) { cin >> city >> d; add(c-'A'+1,city-'A'+1,d); } } for(int i=1; i<=n; i++) f[i]=i; sort(e+1,e+t+1,cmp); int ans=0,x,y; for(int i=1; i<=t; i++) { x=find(e[i].from); y=find(e[i].to); if(x!=y) un(x,y),ans+=e[i].w; } printf("%d\n",ans); } return 0;}
- Jungle Roads Kruskal模板
- pku1251 Jungle Roads(kruskal)
- Jungle Roads (Kruskal)
- [hoj 1632]Jungle Roads[Kruskal最小生成树模板题]
- ZOJ 1406 Jungle Roads (kruskal)
- ZOJ 1406 Jungle Roads 【kruskal】
- hdu1301 Jungle Roads(kruskal 备忘)
- HDU 1301--Jungle Roads 【Kruskal】
- [POJ 1251]Jungle Roads Kruskal
- POJ1251- Jungle Roads(Kruskal)
- POJ 1251 Jungle Roads (kruskal)
- 1406 Jungle Roads(kruskal, 并查集)
- zoj 1406 Jungle Roads(Prim || Kruskal)
- HDU 1301Jungle Roads Kruskal求解
- poj 1251 Jungle Roads【prim & kruskal】
- POJ 1251Jungle Roads(Kruskal)
- POJ 1251 Jungle Roads(Kruskal)
- 杭电-1301 Jungle Roads (kruskal)
- some books
- 字节顺序&字节对齐
- 区别js中的3/2(结果1.5))与 java 中的 2/3(结果:0)
- Qt set current window
- 家电智能化技术通则国家标准9月1日正式实施
- Jungle Roads Kruskal模板
- Jim Gray Summary Home Page
- 【windows8开发】深入浅出C++/CX
- Ubuntu 中其他编程语言的使用
- 关于 中国电信SMGP 的那些事儿
- ret and retf
- Sightseeing trip floyd求最小环
- java中常见排序方法的补充
- hdu 4022 Bombing