图论测试题(一)第一题:longest

第一题:longest

乌托邦有n个城市,某些城市之间有公路连接。任意两个城市都可以通过公路直接或者间接到达,并且任意两个城市之间有且仅有一条路径(What does this imply? A tree!)。

每条公路都有自己的长度,这些长度都是已经测量好的。

小修想从一个城市出发开车到另一个城市,并且她希望经过的公路总长度最长。请问她应该选择哪两个城市?这个最长的长度是多少?

 

Input format:

第一行n(n<=1000)。

以下n-1行每行三个整数a, b, c。表示城市a和城市b之间有公路直接连接,并且公路的长度是c(c<=10000)。

Output format:

仅一个数,即最长长度。

Sample:

Longest.in

5

1 2 2

2 3 1

2 4 3

1 5 4

 

Longest.out

9

 

说明:从城市4到城市5,经过的路径是4-2-1-5,总长度是9。

 

裸的kruskal吧= =没什么好说的,模板题

上代码o(〃'▽'〃)o

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int n,m;
struct node{int u;int v;int value;
}e[1001];
int father[1001];
bool cmp(node e1,node e2)
{return e1.value>e2.value;
}
void read()
{scanf("%d",&n);m=0;for(int i=1;i<n;i++){m++;int u,v,w;scanf("%d%d%d",&u,&v,&w);e[m].u=u;e[m].v=v;e[m].value=w;}sort(e+1,e+m+1,cmp);
}
int find(int x)
{if(father[x]==x) return x;else return father[x]=find(father[x]);
}
void merge(int x,int y)
{if(father[x]!=father[y]) father[father[x]]=father[y];
}
void kruskal()
{int sum=0;int ans=0;for(int i=1;i<=n;i++) father[i]=i;for(int i=1;i<=m;i++){if(find(e[i].u)!=find(e[i].v)){sum++;ans+=e[i].value;merge(e[i].u,e[i].v);}if(sum==n-2){printf("%d",ans);return ;}}printf("%d",-1);
}
int main()
{read();kruskal();return 0;
}
View Code

 

转载于:https://www.cnblogs.com/orange-/p/4887850.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/458757.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RTC实时时钟驱动

RTC&#xff08;Real-Time Clock)实时时钟为操作系统提供了一个可靠的时间&#xff0c;并且在断电的情况下&#xff0c;RTC实时时钟也可以通过电池供电&#xff0c;一直运行下去。 RTC通过STRB/LDRB这两个ARM指令向CPU传送8位数据&#xff08;BCD码&#xff09;。数据包括秒&am…

Compass样式重置

1. 全局样式重置 main.scss文件插入 import "compass/reset"; 对应的生成css为 html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, sa…

计算机表格复制粘贴后不变,excel表格复制粘贴后格式不变

Excel使用过程中经常需要将一个表格内容复制粘贴到其他表格中去。如果原始表格设置了行高和列宽&#xff0c;选中要复制的区域复制后&#xff0c;当在其他表格选择一个单元格进行粘贴时&#xff0c;行高和列宽就都变了。下面介绍excel表格复制粘贴后格式不变的操作方法。excel表…

C++ Primer章课后编程问题

1、代码#include<iostream> int main() {using namespace std;int num1;int num2;int total0;cout << "请输入開始数字\n";cin >> num1;cout << "请输入结束数字\n";cin >> num2;for (num1; num1<num2; num1)total num1…

vps搭建网站服务器,vps如何架设网站服务器

弹性云服务器 ECS弹性云服务器(Elastic Cloud Server)是一种可随时自助获取、可弹性伸缩的云服务器&#xff0c;帮助用户打造可靠、安全、灵活、高效的应用环境&#xff0c;确保服务持久稳定运行&#xff0c;提升运维效率三年低至5折&#xff0c;多种配置可选了解详情手工部署D…

vs 常见问题汇总

vs添加对dll的引用 我们在使用vs进行开发调试的时候经常会遇到一个问题&#xff0c;就是当我们的主工程引用到其他工程更新的dll&#xff08;我们经常采用copy到工程目录的方法&#xff09;、亦或者当我们的多个工程引用到同一个dll文件的时候&#xff0c;我们怎么来配置&#…

斯柯达柯珞克显示服务器错误,斯柯达柯珞克原来还有四驱的版本,不信你看!...

▶有望推出四驱版本▶专利图已经曝光▶外观没有变化斯柯达柯珞克大家应该不会特别陌生&#xff0c;虽然它在前两个月才正式上市&#xff0c;不过作为一款合资的紧凑型SUV来说&#xff0c;它的关注度还是不错的。销量上&#xff0c;4月份交出了2668辆的成绩&#xff0c;虽然还不…

javascript实例——鼠标特效篇(包含2个实例)

鼠标是现在电脑的基本配置之一&#xff0c;也是最常用的输入命令的工具之一。本文将将一些与鼠标有关系的特效。 1、跟随鼠标移动的彩色星星 如题&#xff0c;会根据鼠标的移动而移动&#xff0c;并在鼠标周围随机来回移动&#xff0c;让人感觉在放大缩小。根据书上的代码做了一…

Perforce使用指南_forP4V

第一章 前言 Perforce SCM System是一款构建于可伸缩客户/服务器结构之上的软件配置管理工具。仅仅应用 TCP/IP&#xff0c;开发人员就能够通过多种Perforce客户端&#xff08;几种平台的GUI、WEB、或命令行&#xff09;访问 Perforce服务器。Perforce能够被快速和容易地部署…

sql语句示例

sql语句示例&#xff1a; 选区指定的列 select 图书编号,图书名称 from 图书查询全部信息 select * from 图书查询信息之后更改所获得的列的名称 select 姓名 as 用户名, 电话 as 联系电话 from 用户也可以这样 select 用户名姓名,联系电话电话 from 用户对某些列进行计筭后在显…

曙光服务器优势,5大核心优势 探秘曙光Cloudview三大平台

1Cloudview1.5核心优势对于云计算而言&#xff0c;国产厂商也有着自己独到的云方案。曙光Cloudview云计算操作系统采用新一代云计算中心的全新的管理模型&#xff0c;充分考虑云计算中心的资源分配、业务运行和运维服务等各种管理要素&#xff0c;实现云计算中心的软硬件平台资…

Centos 下面升级系统内核(转)

1、导入public key 1rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org2、安装ELRepo到CentOS 6.6中 1rpm -Uvh http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm3、安装长期支持版本 1yum --enablerepoelrepo-kernel install kernel-lt -y4、编辑g…

Mantle--国外程序员最常用的iOS模型字典转换框架

Mantle简介 Mantle是iOS和Mac平台下基于Objective-C编写的一个简单高效的模型层框架。 Mantle能做什么 Mantle可以轻松把JSON数据、字典&#xff08;Dictionary&#xff09;和模型&#xff08;即Objective对象&#xff09;之间的相互转换&#xff0c;支持自定义映射&#xff0c…

C++ assert() 详解

C assert 宏的应用方式将会在这篇文章中进行详解 相信对此有兴趣的朋友们应该可以根据我们介绍的内容充分掌握这方面的应用技巧。 作为一个经验丰富的编程人员来说&#xff0c;对于C编程语言应该不会陌生的&#xff0c;实现它的应用可以帮助我们轻松的各种功能需求。 在这里我…

直连测速服务器异常,求证! 网件R7800, Speedtest测速的怪现象,200M宽带+R7800者进...

本帖最后由 毛毛雨 于 2017-11-18 18:50 编辑宽带是联通FTTH 200M&#xff0c;标准千兆网线&#xff0c;千兆网卡。问题前的插曲&#xff1a;R7800刚到手&#xff0c;就迫不及待的换上了&#xff0c;结果&#xff0c;无论是路由器内置Speedtest册数&#xff0c;还是电脑端的Spe…

iOS socket

为什么80%的码农都做不了架构师&#xff1f;>>> #import "ViewController.h"interface ViewController ()<NSStreamDelegate,UITextFieldDelegate,UITableViewDataSource,UITableViewDelegate>{NSInputStream *_inputStream;//对应输入流NSOutputS…

PHP配置,php.ini以及覆盖问题

在部署一个cms项目到服务器上的时候&#xff0c;因为cms的模板比较老&#xff0c;服务器上用的php是5.3.3版&#xff08;大于5.3&#xff0c;可以认为是新的&#xff09;&#xff0c;有些页面会显示“deprecated”类别的错误信息。安全起见要抑制页面中的错误信息输出&#xff…

C/C++宏的使用总结

宏替换是C/C系列语言的技术特色&#xff0c;C/C语言提供了强大的宏替换功能&#xff0c;源代码在进入编译器之前&#xff0c;要先经过一个称为“预处理器”的模块&#xff0c;这个模块将宏根据编译参数和实际编码进行展开&#xff0c;展开后的代码才正式进入编译器&#xff0c;…

Macosx 安装 ionic 成功教程

2019独角兽企业重金招聘Python工程师标准>>> 一、首先介绍一下ionic ionic是一个用来开发混合手机应用的&#xff0c;开源的&#xff0c;免费的代码库。可以优化html、css和js的性能&#xff0c;构建高效的应用程序&#xff0c;而且还可以用于构建Sass和AngularJS的…

hp g6服务器安装系统,HPProLiantDL180G6服务器安装图.PDF

HPProLiantDL180G6服务器安装图4 前面板组件 / 25 个 2.5 英寸硬盘型号HP ProLiant DL180 G6 识别服务器组件2 光驱服务器 前面板组件 3 前部 UID LED 指示灯/开关4 系统运行状况 LED 指示灯1 前面板组件/4 个 3.5 英寸硬盘型号 5 网卡 1 活动 LED 指示灯安装图 6 网卡 2 活动 …