POJ2377 Bad Cowtractors(最大生成树)
来源:互联网 发布:php自助建站系统源码 编辑:程序博客网 时间:2024/06/07 00:45
题意:
连接农场,要求输出最大权值和并且不能连成环,如果不能全部连接,输出-1
要点;
就是最小生成树变成最大罢了,Kruskal算法,排序改成从大到小,一次AC。
#include<stdio.h>#include<stdlib.h>#include<string.h>#include<algorithm>#define maxn 100050using namespace std;int p[maxn];int m, n;struct edge{int u, v, len;}e[maxn];bool cmp(edge a, edge b){return a.len > b.len;}void init(){for (int i = 1; i <= m; i++)p[i] = i;}int find(int x){if (p[x] == x) return x;return p[x] = find(p[x]);}bool merge(int x, int y){x = find(x);y = find(y);if (x != y){p[x] = y;return true;}return false;}int kruskal(){init();sort(e, e + n, cmp);int sum = 0, edges = 0;for (int i = 0; i < n; i++){if (merge(e[i].u, e[i].v)){sum += e[i].len;edges++;}if (edges + 1 == m)return sum;}return -1;}int main(){while (~scanf("%d%d", &m, &n)){for (int i = 0; i < n; i++)scanf("%d%d%d", &e[i].u, &e[i].v, &e[i].len);printf("%d\n", kruskal());}return 0;}
0 0
- POJ2377 Bad Cowtractors 【最大生成树】
- POJ2377 Bad Cowtractors(最大生成树)
- poj2377 Bad Cowtractors (最大生成树)
- poj2377 -- Bad Cowtractors(最大生成树)
- POJ2377 Bad Cowtractors【Kruskal】【求最大生成树】
- POJ2377 Bad Cowtractors 最小生成树
- poj2377 Bad Cowtractors(最小生成树)
- poj2377 Bad Cowtractors(最大生成树的Prim和Kruskal做法)
- poj2377 - Bad Cowtractors
- POJ2377--Bad Cowtractors
- POJ2377 Bad Cowtractors
- POJ2377-Bad Cowtractors
- POJ2377 Bad Cowtractors
- POJ 2377 Bad Cowtractors 最大生成树
- POJ 2377 Bad Cowtractors(最大生成树)
- POJ 2377 Bad Cowtractors【最大生成树】
- POJ 2377 Bad Cowtractors 【最大生成树】
- POJ 2377 - Bad Cowtractors(最大生成树)
- hdu1032 Train Problem II (卡特兰数)
- 概率论与数量统计(二)1___ 随机事件与概率
- RxJava-Scheduler
- 给15个数字排序
- Java Executor 框架学习总结
- POJ2377 Bad Cowtractors(最大生成树)
- php mysql 一个查询优化的简单例子
- APIC Timer
- Leetcode 第 1 题(Two Sum)
- Objective-C之初始化
- 机器学习:贝叶斯总结_3:线性回归和贝叶斯回归
- spring bean
- linux下信号
- LeetCode #1 Two Sum C# Solution