hdu 2988 Dark roads
来源:互联网 发布:摇钱树软件官网 编辑:程序博客网 时间:2024/05/24 06:21
原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2988
最小生成树。。
#include<algorithm>#include<iostream>#include<cstdlib>#include<cstring>#include<cstdio>#include<vector>#include<queue>#include<set>using std::set;using std::sort;using std::pair;using std::swap;using std::multiset;using std::priority_queue;#define pb(e) push_back(e)#define sz(c) (int)(c).size()#define mp(a, b) make_pair(a, b)#define all(c) (c).begin(), (c).end()#define iter(c) decltype((c).begin())#define cls(arr, val) memset(arr, val, sizeof(arr))#define cpresent(c, e) (find(all(c), (e)) != (c).end())#define rep(i, n) for(int i = 0; i < (int)n; i++)#define tr(c, i) for(iter(c) i = (c).begin(); i != (c).end(); ++i)const int N = 200010;const int INF = 0x3f3f3f3f;typedef unsigned long long ull;struct edge { int u, v, w; inline bool operator<(const edge &x) const { return w < x.w; }}G[N];struct Kruskal { int E, sum, par[N], rank[N]; inline void init(int n) { E = sum = 0; rep(i, n + 1) { par[i] = i, rank[i] = 0; } } inline void built(int m) { int u, v, w; while (m--) { scanf("%d %d %d", &u, &v, &w); G[E++] = { u, v, w }, sum += w; } } inline int find(int x) { while (x != par[x]) { x = par[x] = par[par[x]]; } return x; } inline bool unite(int x, int y) { x = find(x), y = find(y); if (x == y) return false; if (rank[x] < rank[y]) { par[x] = y; } else { par[y] = x; rank[x] += rank[x] == rank[y]; } return true; } inline int kruskal() { int ans = 0; sort(G, G + E); rep(i, E) { edge &e = G[i]; if (unite(e.u, e.v)) { ans += e.w; } } return ans; } inline void solve(int n, int m) { init(n), built(m); printf("%d\n", sum - kruskal()); }}go;int main() {#ifdef LOCAL freopen("in.txt", "r", stdin); freopen("out.txt", "w+", stdout);#endif int n, m; while (~scanf("%d %d", &n, &m), n + m) { go.solve(n, m); } return 0;}
0 0
- hdu 2988 Dark roads
- hdu 2988 Dark roads
- HDU 2988 Dark roads 【最小生成树】
- Dark roads 2988
- 杭电 2988 Dark roads
- SOJ 3427 Dark roads
- 3427: Dark roads
- Dark roads hdu2988 Kruskal
- Uva 11631 - Dark roads
- Uva-11631- Dark roads
- uva11631 - Dark roads
- UVa 11631 - Dark roads
- HDU2988 Dark roads【Kruskal】
- Sicily 7766. Dark roads
- Dark roads--hdoj
- Dark roads(MST模板)
- hdu2988 Dark roads--Kruskal
- HDOJ 题目2988Dark roads(最小生成树)
- What's the point of Spring MVC's DelegatingFilterProxy?
- A problem of sorting(简单排序+读取一整行数据的用法)
- 动态代理之一:JDK动态代理 和异常 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.
- shell脚本符号小结
- XP系统硬盘安装Ubuntu14.04-超详细
- hdu 2988 Dark roads
- 1011. A+B和C (15)
- 卡尔曼(Kalman) 滤波跟踪一个旋转的点程序
- Leetcode: Dungeon Game
- 费马 欧拉定理——SHUoj 1949 Infinite 3
- 探索Android中的Parcel机制(上)
- c++primer之顺序容器(访问元素)
- 2.OC之NSString数组常用功能简介
- python常用web框架性能测试(django,flask,bottle,tornado)