口袋的天空

  1. n、m不分的我卡了很久很久……
  2. 一开始先把这n个点 看作是 n 棵树,那么要得到 k 棵树的话我们只需要连 n - k 条边就可以了
  3. 大概做法就是:
    1.排序:先将所有边 按照权值 从小到大排序;
    2.并查集:扫描所有的边,如果这两个点之间不是一棵树的, 那么就连起来;
    3.判断:如果到最后 连的边数已经 大于或等于 n - k 了,那么说明可以,否则就不行;
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 1e5 + 10;
int n, m, k;
int p[N];
int pu, pv;
struct E{int u, v, w;
}e[N];
bool operator < (E x, E y){return x.w < y.w;
}int find(int x){return p[x] == x ? x : p[x] = find(p[x]);
}int main(){int ans = 0, sum = 0;scanf("%d%d%d", &n, &m, &k);for(int i = 1 ; i <= m; i ++) scanf("%d%d%d", &e[i].u, &e[i].v, &e[i].w);for(int i = 0; i <= n; i ++) p[i] = i;sort(e + 1, e + m + 1);for(int i = 1; i <= m; i ++){pu = find(e[i].u), pv = find(e[i].v);if(pu != pv){p[pu] = pv;ans += e[i].w;sum ++;if(sum == n - k){cout << ans;return 0;}}}cout << "No Answer";return 0;}

[题]口袋的天空(连接云朵) —— 标签 #最小生成树(kru) #并查集相关推荐

  1. ssl1615-Frogger【图论,最小生成树,并查集】

    题目 给一个无向图,要求从点1到点2的一条路,要求这条路上的边的最大值尽量小. 输入输入 多组数据,每个数据n+1行,分别是n和点的坐标 2 0 0 3 4 3 17 4 19 4 18 5 0 输出 ...

  2. LeetCode 1135. 最低成本联通所有城市(最小生成树+排序+并查集)

    文章目录 1. 题目 2. 解题 1. Kruskal 2. prim 1. 题目 想象一下你是个城市基建规划者,地图上有 N 座城市,它们按以 1 到 N 的次序编号. 给你一些可连接的选项 con ...

  3. 图论(最短路,最小生成树,并查集)

    本文目录: tarjan算法(判断环) 最小生成树(Kruskal算法) 最小生成树(Prim算法) 优先队列实现dijkstra(最短路) 并查集(求环) floyd(弗洛伊德) (最短路) 判断环 ...

  4. 2015 UESTC 数据结构专题H题 秋实大哥打游戏 带权并查集

    秋实大哥打游戏 Time Limit: 1 Sec  Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/contest/show/59 Descr ...

  5. 51nod1743-雪之国度【最小生成树,LCA,并查集】

    正题 题目链接:http://www.51nod.com/Challenge/Problem.html#problemId=1743 题目大意 nnn个点mmm条边的一张图,每次询问要求找出x,yx, ...

  6. HDU1233——还是通常工程(最小生成树,并查集)

    http://acm.hdu.edu.cn/showproblem.php?pid=1233 题意:就是裸的最小生成树.这里用的是kruskal 使用的是并查集,将按距离排序的边,分别把点加到集合里. ...

  7. ssl2348-连接格点【图论,最小生成树,并查集】

    题目 有一个M行N列的点阵,相邻两点可以相连.一条纵向的连线花费一个单位,一条横向的连线花费两个单位.某些点之间已经有连线了,试问至少还需要花费多少个单位才能使所有的点全部连通. 输入 第一行输入两个 ...

  8. 并查集——最小连接路径和Kruskal(hdu1301)

    *没听说过并查集的同学先移步看一下上篇博客http://blog.csdn.net/sm9sun/article/details/53256232 好,首先说一下并查集的标准定义: 概述: 在一些有N ...

  9. hdu 1233 还是畅通工程 Kruskal 最小生成树 并查集

    题目地址: http://acm.hdu.edu.cn/showproblem.php?pid=1233 模板题,kruskal求最小生成树. 并查集是个好东西啊  就是注意一点 输入边的信息时,角标 ...

  10. 并查集与贪心算法的应用之求解无向图的最小生成树

    一,介绍 本文介绍使用Kruskal算法求解无向图的最小生成树.Kruskal是一个贪心算法,并且使用了并查集这种数据结构. 关于并查集的介绍,参考:数据结构--并查集的原理及实现 二,构造一个无向图 ...

最新文章

  1. Exchange2003 OWA 将HTTPS转为HTTP访问!〖罗斌个人工作经验谈〗
  2. Vijos P1131 最小公倍数和最大公约数问题【暴力】
  3. cglib源码分析--转
  4. 你的微信昵称,正在暴露你!
  5. 直播预告 | 中国工程院院刊:信息与电子工程领域青年学术前沿论坛
  6. 深度学习表征的不合理有效性——从头开始构建图像搜索服务(二)
  7. IJCAI 2018:中科院计算所:增强对话生成一致性的序列到序列模型
  8. linux tcp客户端端口号,Linux网络编程--服务器客户端(TCP实现)
  9. python50种算法_一文洞悉Python必备50种算法
  10. Yii2.0 两次奇葩的数据库连接经历
  11. 注册OCX控件并在VS2013的mfc程序中使用及常见问题总结
  12. 基于51单片机的步进电机驱动程序
  13. 《第一桶金怎么赚——淘宝开店创业致富一册通》一一1.2 创业者应具备的条件与经验...
  14. 勒索病毒WannaCry深度技术分析:详解传播、感染和危害细节
  15. 搜题公众号题库对接教程
  16. js多线程编程web worker
  17. 计算机视觉结课论文,计算机视觉与图像识别结课论文教案.doc
  18. 苹果9是5g手机吗_苹果手机可以量体温?这是真的吗
  19. 从零开始安装VMwareTools的详细步骤
  20. 【OpenPose-Windows】OpenPose1.4.0+VS2017+CUDA9.2+cuDNN9.2+Windows配置教程

热门文章

  1. win7安装cad2006启动后提示计算机中丢失ac1st16.dll
  2. 魔百盒CM311-1_S905L3芯片_YST代工_红外蓝牙语音_安卓9.0_线刷固件包
  3. Ubuntu截图快捷键
  4. 神经网络加速器的兴起
  5. 如何在新的Apple TV遥控器上调整触摸灵敏度
  6. 用计算机解决质数猜想,天才数学家又出成果!他解决了困扰数学界80年的猜想,连陶哲轩都夸他厉害!...
  7. 网络工程师考试知识点[必考知识点]--必看
  8. Helm — Chart介绍
  9. 如何利用Python爬虫爬取小说网站并保存到txt文件
  10. 用两种while循环求2的n次方,n是传入的值。