UVa11747 Heavy Cycle Edge (Kruskal)
来源:互联网 发布:java视频点播系统 编辑:程序博客网 时间:2024/05/19 12:40
卡了一道题,想今天怎么都得过一道题,就先拿着开刀吧,比较简单的
#include <cstdio>#include <algorithm>#include <cstring>using namespace std;typedef long long ll;struct edge { int u, v; ll w; bool is;}e[25010];int n, m, fa[1010];bool cmp( edge a, edge b ) { return a.w < b.w; }int find ( int x ) { return fa[x] == x ? x : fa[x] = find(fa[x]); }int main(){ while ( scanf("%d%d", &n, &m) != EOF && !(!n && !m) ) { bool f = false; for ( int i = 0; i < m; e[i].is = 0, ++i ) scanf("%d%d%lld", &e[i].u, &e[i].v, &e[i].w); sort( e, e + m, cmp ); for ( int i = 0; i < n; ++i ) fa[i] = i; for ( int i = 0; i < m; ++i ) { int x = e[i].u, y = e[i].v; int a = find(x), b = find(y); if ( a != b ) { fa[a] = b; e[i].is = true; } } for ( int i = 0; i < m; ++i ) { if ( !e[i].is ) { if ( f ) printf(" "); f = true; printf("%lld", e[i].w); } } if ( !f ) printf("forest"); printf("\n"); }}
- UVa11747 Heavy Cycle Edge (Kruskal)
- UVa 11747 - Heavy Cycle Edges
- uva 11747 Heavy Cycle Edges
- UVA 11747 - Heavy Cycle Edges(MST)
- UVA 11747 Heavy Cycle Edges(MST)
- poj1797 Heavy Transportation kruskal+并查集
- (beginer) 最小生成树 UVA 11747 Heavy Cycle Edges
- uva 11747 - Heavy Cycle Edges(生成树)
- UVa 11747 Heavy Cycle Edges(最小生成树)
- POJ1797 Heavy Transportation (最短路径/最小生成树kruskal)
- POJ 1797Heavy Transportation Kruskal并查集求解
- POJ 1797 Heavy Transportation(二分+并查集/kruskal)
- EDGE
- Edge
- EDGE
- Edge
- EDGE
- EDGE
- 算法导论学习笔记(十一):动态规划(一)
- 进入黑马day2-解析xml三种方法(2)sax解析器解析
- 大数乘法
- Transportation uva 301 为什么错了?
- (转载)FFMPEG 源码分析(-)
- UVa11747 Heavy Cycle Edge (Kruskal)
- (转载)FFMPEG源码分析(二)
- 可排序的table
- slub slab
- kruskal+ 并查集
- 在字符串中删除特定的字符
- arm linux QT 程序开发流程
- C#源程序编译成动态链接库(DLL)
- jquerymobile-23 事件