hdu 1233

#include<stdio.h>
#include<algorithm>
using namespace std;
struct dis
{
int a, b, c;
} s[];
int cmp(dis x, dis y)
{
return x.c < y.c;
}
int father[];
int fsize[];
int findfather(int y)
{
int r = y;
while (r != father[r])
{
r = father[r];
}
return r;
}
int combine(int a, int b)
{
int fx = findfather(a);
int fy = findfather(b);
if (fx != fy)
{
if (fsize[fx] >= fsize[fy])
{
father[fy] = fx;
fsize[fx] += fsize[fy];
fsize[fy] = ;
}
else
{
father[fx] = fy;
fsize[fy] += fsize[fx];
fsize[fx] = ;
}
return ;
}
else
{
return ;
}
}
int main()
{
int t, i, n, sum, m;
while (~scanf("%d", &t), t)
{
n = t * (t - ) / ;
for (i = ; i <= t; i++)
{
fsize[i] = ;
father[i] = i;
}
for (i = ; i < n; i++)
{
scanf("%d%d%d", &s[i].a, &s[i].b, &s[i].c);
}
sort(s, s + n, cmp);
m = , sum = ;
for (i = ; i < n && m < t; i++)
{
if (combine(s[i].a, s[i].b))
{
m++;
sum += s[i].c;
}
}
printf("%d\n", sum);
}
return ;
}

MST-kruskal ElogE+V的更多相关文章

  1. MST — Kruskal's algorithm

    算法简介 Kruskal算法可用来求解MST(最小生成树)问题,还可以作为迷宫生成算法等. 算法分析 其实算法不难理解,算法先要将 $ G(V, E) $ 的集合 $ E $ 按权重 $ \Omega ...

  2. MST(Kruskal’s Minimum Spanning Tree Algorithm)

    You may refer to the main idea of MST in graph theory. http://en.wikipedia.org/wiki/Minimum_spanning ...

  3. POJ1679 The Unique MST(Kruskal)(最小生成树的唯一性)

    The Unique MST Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 27141   Accepted: 9712 D ...

  4. 最小生成树 (Minimum Spanning Tree,MST) --- Kruskal算法

    本文链接:http://www.cnblogs.com/Ash-ly/p/5409265.html 引导问题: 假设要在N个城市之间建立通信联络网,则连通N个城市只需要N - 1条线路.这时,自然会考 ...

  5. POJ 1679 The Unique MST --Kruskal应用

    这题可以用次小生成树解,这里用Kruskal算法来做.每条边除维护u,v,w外,还维护: used:表示这条边是否加过 eq:表示有没有与这条边相等的边 del:删除标记,以便删边之用 如果对于一个最 ...

  6. NOI.AC #31 MST —— Kruskal+点集DP

    题目:http://noi.ac/problem/31 好题啊! 题意很明白,对于有关最小生成树(MST)的题,一般是要模拟 Kruskal 过程了: 模拟 Kruskal,也就是把给出的 n-1 条 ...

  7. The Unique MST(次小生成树)

    Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 22335   Accepted: 7922 Description Give ...

  8. 数据结构学习笔记05图(最小生成树 Prim Kruskal)

    最小生成树Minimum Spanning Tree 一个有 n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n 个结点,并且有保持图连通的最少的边. 树: 无回路   |V|个顶 ...

  9. BZOJ 1083: [SCOI2005]繁忙的都市(MST)

    裸的最小生成树..直接跑就行了 ---------------------------------------------------------------------- #include<c ...

随机推荐

  1. WPF 非UI线程更新UI界面的各种方法小结

    转载:https://www.cnblogs.com/bdbw2012/articles/3777594.html 我们知道只有UI线程才能更新UI界面,其他线程访问UI控件被认为是非法的.但是我们在 ...

  2. ssh隧道详解与案例利用讲解

    原文阅读:https://www.52stu.org/?p=206 你是否有过自己身处内网,却想整个远控上线?你是否有过身处目标内网,却想把目标的内网的Linux的ssh转发出来?你是否想过穿透多层网 ...

  3. 看我如何通过邮箱获取IP定位-复现

    环境准备:一台部署了phpstudy 的vps 脚本内容:get_ip.php 该脚本可以生成一个十分隐蔽的图片,并获取客户端的一些敏感信息. 代码内容如下: <?php //show_sour ...

  4. NOIp2013D2T3 华容道【搜索&图论-最短路】

    题目传送门 暴力搜索 看到这道题的第一反应就是直接上$bfs$啦,也没有想到什么更加优秀的算法. 然后就是$15$分钟打了$70$分,有点震惊,纯暴力诶,这么多白给分嘛,太划算了,这可是$D2T3$诶 ...

  5. 浅谈Angularjs至Angular2后内置指令的变化

    一.科普概要说明 我们常说的 Angular 1 是指 AngularJS: 从Angular 2 开始已经改名了.不再带有JS,只是单纯的 Angular: Angular 1.x 是基于JavaS ...

  6. Java中对比单继承与多继承的优劣,以及java的解决方案

    继承是一种面相对象的基本特征之一,但在具体语言的语法设计中有两种方式:单继承和多继承. 所谓多继承是指一个子类可以拥有多个父类:单继承则是一个子类只拥有一个父类. 单继承与多继承的优劣: 多继承优点在 ...

  7. redhat 7 防火墙配置

    没有iptables 用systemctl stop firewalld

  8. 2019 徐州icpc网络赛 E. XKC's basketball team

    题库链接: https://nanti.jisuanke.com/t/41387 题目大意 给定n个数,与一个数m,求ai右边最后一个至少比ai大m的数与这个数之间有多少个数 思路 对于每一个数,利用 ...

  9. JCC指令

    0.JMP1.JE, JZ 结果为零则跳转(相等时跳转) ZF=12.JNE, JNZ 结果不为零则跳转(不相等时跳转) ZF=03.JS   结果为负则跳转   SF=14.JNS   结果为非负则 ...

  10. IDEA 修改JavaWeb的访问路径

    问题描述        对于我这个刚刚使用IDEA不久的新手来说,能够正常运行就不错了,不过到了后面,可能会觉得IDEA给你分配的默认访问路径很不顺手,比如访问的时候需要通过: http://loca ...