【图论训练】天气晴朗的魔法【最小生成树】
思路:
因为是最大值要最小,所以直接先跑一遍最小生成树,然后跑出最大的那条边。
然后让总和最大,直接从那条边往前跑,跑最大的。
c o d e code code
#include<iostream>
#include<cstdio>
#include<algorithm>#define ll long longusing namespace std;const int MAXN = 2e5 + 10;int n, m, fa[MAXN];
struct node {int from, to, w;
}b[MAXN << 1];bool cmp(node x, node y) {return x.w < y.w;
}int find_(int x) {if(x == fa[x]) return x;return fa[x] = find_(fa[x]);
}int main() {scanf("%d%d", &n, &m);for(int i = 1; i <= n; i ++) fa[i] = i;for(int i = 1; i <= m; i ++)scanf("%d%d%d", &b[i].from, &b[i].to, &b[i].w);sort(b + 1, b + 1 + m, cmp);int tmp = 0, p = 0;for(int i = 1; i <= m; i ++) {int x = find_(b[i].from), y = find_(b[i].to);if(x != y) fa[x] = y, tmp ++;if(tmp == n - 1) {p = i;while(b[p].w == b[i].w && p <= m) p ++;p --;break;}}tmp = 0;ll ans = 0;for(int i = 1; i <= n; i ++) fa[i] = i;for(int i = p; i >= 1; i --) {int x = find_(b[i].from), y = find_(b[i].to);if(x != y) fa[x] = y, tmp ++, ans += b[i].w;if(tmp == n - 1) break;}printf("%lld", ans);return 0;
}
【图论训练】天气晴朗的魔法【最小生成树】相关推荐
- 51Nod 1640 - 天气晴朗的魔法(最小生成树变形)
题目链接 http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1640 [题目描述] 这样阴沉的天气持续下去,我们不免担心起他的 ...
- 51nod-1640--天气晴朗的魔法(简单最小生成树)
1640 天气晴朗的魔法 题目来源: 原创 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 这样阴沉的天气持续下去,我们不免担心起他的健康. 51nod魔法学校近日 ...
- nod-1640-天气晴朗的魔法
题目: 这样阴沉的天气持续下去,我们不免担心起他的健康. 51nod魔法学校近日开展了主题为"天气晴朗"的魔法交流活动. N名魔法师按阵法站好,之后选取N - 1条魔法链将所有魔法 ...
- 51Nod-1640-天气晴朗的魔法(最小生成树)
转载于:https://www.cnblogs.com/GrowingJlx/p/6642734.html
- 通过Keras + LSTM训练天气污染程度预测模型
0 前言 在上文中进行ARIMA时序预测后,了解到强大的LSTM在处理时序预测有更为优秀的表现,因此对LSTM进行了学习. LSTM是一种时间递归神经网络,它出现的原因是为了解决RNN的一个致命的缺陷 ...
- POJ2560-雀斑(Freckles)【图论,并查集,最小生成树,KURUSKAL】
正题 题目链接: http://poj.org/problem?id=2560 大意 有n个点,给出坐标,求连接这n个点的最短路线 解题思路 KURUSKAL算法求最小生成树. 代码 #include ...
- 数据结构实验之图论六:村村通公路(最小生成树Prim/Kruskal)
Description 当前农村公路建设正如火如荼的展开,某乡镇政府决定实现村村通公路,工程师现有各个村落之间的原始道路统计数据表,表中列出了各村之间可以建设公路的若干条道路的成本,你的任务是根据给出 ...
- ACM训练合集---HDU4545 魔法串
Problem Description 小明和他的好朋友小西在玩一个新的游戏,由小西给出一个由小写字母构成的字符串,小明给出另一个比小西更长的字符串,也由小写字母组成,如果能通过魔法转换使小明的串和小 ...
- 蓝桥杯 - 算法训练 安慰奶牛 (Kruscal最小生成树+技巧)
题目描述: Farmer John变得非常懒,他不想再继续维护供奶牛之间供通行的道路.道路被用来连接N个牧场,牧场被连续地编号为1到N.每一个牧场都是一个奶牛的家.FJ计划除去P条道路中尽可能多的道路 ...
最新文章
- 技术转管理的成功率不到70%!你必须先迈过这9道坎...10页PPT详解
- Boost:libbz2.dll测试程序
- 游戏光线追踪往事:十年技术轮回
- python播放wav文件_python3 写一个WAV音频文件播放器的代码
- 4个优化MongoDB的技巧
- RHEL5+Postfix+MySql+IMAP+MailDrop+ExtMail(5)
- 创建字符串枚举的最好方法
- .net 启动mysql数据库连接_[ASP.net教程]mysql数据库连接方式(.net)
- c语言程序如何链接到数据库,c语言如何链接到数据库
- 7-2 有理数比较 (10 分)
- SEGGER调试软件
- win10没有本地组策略怎么办?
- 等保测评--网络安全等级保护工作流程
- 雪上加霜!吴秀波在《雪豹》中被除名
- BadgeView使用介绍
- rasa算法_使用 Rasa 构建天气查询机器人
- python高级编程(6) - 对象引用,可变性和垃圾和回收
- matlab gui invalid handle无效axes guidat handles等等
- 阿里云视频点播测试问题解决 (获取播放地址播放)
- The supplied data appears to be in the OLE2 Format. You are calling the part of POI that deals with
热门文章
- 【解决方案】t2gp.exe - 损坏的映像 | libcef.dll没有被指定在 Windows 上运行
- java 序列化理解_对Java Serializable(序列化)的理解和总结(二)
- 价值4500的国际版多语言点赞抖音分享点赞任务平台源码(十二种语言)
- Zookeeper和Kafka环境搭建总结
- 划水小老虎的mysql学习路线
- 【电子通识】薄膜电阻与厚膜电阻的差异
- 【环境搭建】机械革命 Z3 Air 双系统 原生Windows10 +Ubuntu 20.04.2.0 LTS 桌面版 配置
- C语言【微项目01】—电话号码管理系统(文件操作实现)【2021-06-29】
- 计算机技术实训的内容,计算机专业生产实习目的及内容
- CSS3 empty伪类(:empty)