次小生成树
来源:互联网 发布:mac air使用教程视频 编辑:程序博客网 时间:2024/05/21 15:00
The Unique MST POJ - 1679
const int LEN = 100000;//有多少条边const int LEN2 = 110;//有多少个点int N,M;struct Node{ int x; int y; int weight;};Node node[LEN];bool operator <(const Node &a,const Node &b){ return a.weight < b.weight;}bool cmp(const Node &a,const Node &b){ return a.weight < b.weight;}int sign1[LEN];int Max_edge[LEN2][LEN2];//最小生成树从i到j最权值最大边的权值int Matrix[LEN2][LEN2];bool sign[LEN2][LEN2];int F[LEN2];int vis[LEN2];void Init(void){ me(sign1); for(int i = 0; i <= N; ++i) F[i] = i; me(sign); me(vis);}int Find(int x){ return x == F[x]?x:F[x] = Find(F[x]);}void Dfs(int x){ for(int i =1; i <= N; ++i) { if(sign[x][i]&&!vis[i]) { Max_edge[x][i] = Max_edge[i][x] = Matrix[x][i]; for(int j = 1; j <= N; ++j) { if(vis[j]&&j!=x) { Max_edge[i][j] = Max_edge[j][i] = max(Max_edge[j][x],Max_edge[x][i]); } } vis[i] = 1; Dfs(i); } }}int main(){ int T; cin>>T; while(T--) { cin>>N>>M; if(M>0) { Init(); for(int i = 0; i < M; ++i) { scanf("%d %d %d",&node[i].x,&node[i].y,&node[i].weight); Matrix[node[i].x][node[i].y] = Matrix[node[i].y][node[i].x] = node[i].weight; } sort(node,node+M); int All_cost = 0; for(int i = 0; i < M; ++i) { int x = Find(node[i].x); int y = Find(node[i].y); if(x!=y) { sign[node[i].x][node[i].y] = sign[node[i].y][node[i].x] = 1; F[x] = y; sign1[i] = 1; All_cost += node[i].weight; } } vis[1] = 1; Dfs(1); int flag = 0; for(int i = 0; i < M; ++i) { if(!sign1[i]&&node[i].x!=node[i].y) { if(Max_edge[node[i].x][node[i].y] >= node[i].weight) { flag = 1; break; } } } if(flag) printf("Not Unique!\n"); else printf("%d\n",All_cost); } else cout<<0<<endl; } return 0;}
阅读全文
0 0
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- 次小生成树
- Java 类的生命周期
- mybatis入门实战之CRUD
- python爬取糗事百科
- #支持向量机(SVM)与其理论发展(1)
- MySQL 5.7 EXPLAIN EXTENDED语句说明
- 次小生成树
- debug有感
- Python网络爬虫1
- vue.js 2.0实现的简单分页
- React实现按钮控制倒计时
- 基于vue2.0的一个分页组件
- dns-prefetch对网站速度能提升有多少?详解dns-prefetch
- Hibernate的入门
- Practical Microservices-Packt Publishing(2017) 读书笔记