铁路与公路

news2025/7/19 10:21:39

 蓝桥杯集训每日一题acwing4074

某国家有 n 个城市(编号 1∼n)和 m 条双向铁路。

每条铁路连接两个不同的城市,没有两条铁路连接同一对城市。

除了铁路以外,该国家还有公路。

对于每对不同的城市 x,y,当且仅当它们之间没有铁路时,它们之间会存在一条双向公路。

经过每条铁路或公路都需要花费 1 小时的时间。

现在有一列火车和一辆汽车同时离开城市 1,它们的目的地都是城市 n。

它们不会在途中停靠(但是可以在城市 n 停靠)。

火车只能沿铁路行驶,汽车只能沿公路行驶。

请你为它们规划行进路线,每条路线中可重复经过同一条铁路或公路,但是为了避免发生事故,火车和汽车不得同时到达同一个城市(城市 n除外)。

请问,在这些条件的约束下,两辆车全部到达城市 n 所需的最少小时数,即求更慢到达城市 n 的那辆车所需的时间的最小值。

注意,两辆车允许但不必要同时到达城市 n。

输入格式

第一行包含整数 n 和 m。

接下来 m 行,每行包含两个整数 u,v,表示城市 u 和城市 v 之间存在一条铁路。

输出格式

一个整数,表示所需的最少小时数。

如果至少有一辆车无法到达城市 n,则输出 −1。

数据范围

前 66 个测试点满足 2≤n≤10,0≤m≤10。
所有测试点满足 2≤n≤400,0≤m≤n(n−1)/2,1≤u,v≤n。

输入样例1:

4 2
1 3
3 4

输出样例1:

2

输入样例2:

4 6
1 2
1 3
1 4
2 3
2 4
3 4

输出样例2:

-1

输入样例3:

5 5
4 2
3 5
4 5
5 1
1 2

输出样例3:

3

 Floyd算法,避免被公路铁路的存储误导

参考 http://t.csdn.cn/xfelf

 

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

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

相关文章

Mars3D美丽乡村系统发布

近日,我们基于Mars3D平台做了一个Mars3D美丽乡村应用系统,于2023年3月7日正式发布上线!该系统提供一个PC浏览器端的“样板房”项目模版,包含常用的地图基础功能,可基于该平台开发新项目,更换数据即可快速形…

C++继承派生以及虚基类的内存分布

C中类有3种权限&#xff1a;public、protected、private。&#xff08;本文为《直击招聘》的笔记总结&#xff09;。如果没有指明默认为private&#xff0c;定义class A如下class A {int x; public:void displaya() {cout << "A::x:" << &x <<…

理解进程、通过调用 fork 函数创建进程

文章目录1.理解进程1.1 CPU核的个数与进程数1.2 进程 ID2.通过调用 fork 函数创建进程2.1 fork.c1.理解进程 进程&#xff08;Process&#xff09;&#xff0c;其定义如下&#xff1a;“占用内存空间的正在运行的程序”。 假如各位从网上下载了 LBreakout 游戏并安装到硬盘。…

CS项目实训-Java 银行ATM机

摘 要 本次课程设计主要目的是培养我们面向对象软件开发的思维&#xff0c;初步了解软件开发的一般流程。提高编程的实际动手能力并增强大家对面向对象的了解。这次课程设计的主要内容是开发一个应用程序&#xff0c;我们小组设计的ATM柜员机&#xff0c;它主要是由各个indows窗…

05 | 如何安全、快速地接入OAuth 2.0?

05 | 如何安全、快速地接入OAuth 2.0&#xff1f; 构建第三方软件应用 第一点&#xff0c;注册信息 小兔软件的研发人员提前登录到京东商家开放平台进行手动注册&#xff0c;以便后续使用这些注册的相关信息来请求访问令牌。兔软件需要先拥有自己的 app_id 和 app_serect 等信…

联想笔记本电脑开机后一直转圈无法启动怎么办?

联想笔记本电脑开机后一直转圈无法启动怎么办&#xff1f;在正常开启电脑的过程中&#xff0c;系统进入到加载页面&#xff0c;但是却一直无法正常的启动。进行系统的重新启动依然是无法正常的使用。遇到这个情况需要进行系统的重置。接下来我们来看看详细的解决方法分享吧。 准…

实现用户操作日志记录

Java记录操作日志 java自带的日志框架是java.util.logging&#xff08;JUL&#xff09;&#xff0c;从JDK1.4&#xff08;2002&#xff09;开始捆绑在JDK中。可以使用JUL来记录操作日志。以下是使用JUL记录事务的示例&#xff1a; // java.util.logging java.util.logging.Lo…

网分线缆测试和dc-block

今天的好苹果和坏苹果 好苹果&#xff1a;是校准件和网分都是好的&#xff0c;又给了我一次复盘的机会 网分测试线缆&#xff1a; 1.网分直接复位&#xff0c;如果网分复位是校准状态&#xff0c;且解的是精密转接头&#xff0c;BNC的&#xff0c;可以不校准&#xff0c;结果差…

【高中数学教资】教案设计通用模板

前言 本文针对的是高中数学教师资格证笔试中最后的大题——教案设计&#xff08;含设计意图&#xff0c;文末有2022下半年高中数学教资教案设计大题&#xff09;。并附上高中数学404教资考点大纲&#xff0c;还有在学习中发现的一些可以免费学习网站推荐。 一、高中数学404考…

List系列集合

一. List集合特点、特有API List的实现类的底层原理 ArrayList底层是基于数组实现的&#xff1a;根据索引定位元素快&#xff0c;增删相对慢。LinkedList底层基于双链表实现的&#xff1a;查询元素慢&#xff0c;增删首尾元素是非常快的。public class ListDemo01 {public sta…

SerDes---CDR技术

1、为什么需要CDR 时钟数据恢复主要完成两个工作&#xff0c;一个是时钟恢复&#xff0c;一个是数据重定时&#xff0c;也就是数据的恢复。时钟恢复主要是从接收到的 NRZ&#xff08;非归零码&#xff09;码中将嵌入在数据中的时钟信息提取出来。 2、CDR种类 PLL-Based CDROve…

【信号与系统笔记】第一章 绪论

1.1信号传输系统 信息传输的任务 将带有信息的信号&#xff0c;通过某种系统由发送者传送给接收者。 通信系统的组成 转换器&#xff1a;把消息转换为电信号或者把电信号还原成消息信道&#xff1a;信号传输的通道&#xff0c;广义上来说。发射机和接收机也可以是信道的一部分…

【RabbitMQ】Producer之publisher confirm、transaction - 基于AMQP 0-9-1(二)

上篇文章主要介绍Producer的mandatory参数&#xff0c;备份队列和TTL的内容&#xff0c;这篇文章讲继续介绍Producer端的开发&#xff0c;主要包括发布方确认和事务机制。 发布方确认 消息持久化机制可以保证应服务器出现异常导致消息丢失的问题&#xff0c;但是Producer将消…

线程池ThreadPoolExecutor,从0到0.6

ThreadPoolExecutor是JDK提供的在java.util.concurrent包中的一个用于创建线程池的工具类。 一、ThreadPoolExecutor的7个参数 corePoolSize&#xff1a;核心线程数&#xff0c;线程池中保留的最小的线程数量&#xff0c;即使它们是空闲的也不会被销毁&#xff0c;除非allowCor…

Modbus转profinet网关连接1200PLC在博图组态与驱动器通讯程序案例

本案例给大家介绍由兴达易控modbus转profinet网关连接1200PLC在博图软件无需编程&#xff0c;实现1200Profinet转modbus与驱动器通讯的程序案例 硬件连接&#xff1a;1200PLC一台&#xff1b;英威腾DA180系列驱动器一台&#xff1b;兴达易控modbus转profinet网关一台 下面就是…

【Git】拉取 Pull Requests 测试的两种方法

文章目录前言参考目录方法说明方法一&#xff1a;直接拉取方法二&#xff1a;使用 diff 文件2.1、保存 diff 文件2.2、新建分支并执行文件前言 最近有参与到框架帮忙进行简单的 Pull Requests&#xff08;以下简称 PR&#xff09; 测试&#xff0c;因为也是第一次接触到这种操…

代码随想录 动态规划||01背包理论 416

Day3601背包理论基础01背包有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i]&#xff0c;得到的价值是value[i] 。每件物品只能用一次&#xff0c;求解将哪些物品装入背包里物品价值总和最大。暴力的解法是指数级别的时间复杂度。进而才需要动态规划的解法来…

Java学习笔记 --- Servlet(1)

一、Servlet技术 1、Servlet基本介绍 1、Servlet 是 JavaEE 规范之一。规范就是接口 2、Servlet 就 JavaWeb 三大组件之一。三大组件分别是&#xff1a;Servlet 程序、Filter 过滤器、Listener 监听器。 3、Servlet 是运行在服务器上的一个 java 小程序&#xff0c;它可以…

院士交锋,专家论道|NLP大模型技术与应用十大挑战,剑指AI未来

2023年2月24日下午&#xff0c;第四届OpenI/O启智开发者大会NLP大模型分论坛在深圳人才研修院隆重举办。NLP大模型论坛会议现场众多NLP领域顶级专家学者与多家国产NLP大模型开发团队汇聚一堂&#xff0c;学术界与产业界破圈交流&#xff0c;激荡尖端思想、分享前沿动态&#xf…

Linux学习第二十二节-网卡IP设置

1.修改网卡IP地址 方式一&#xff1a;通过修改网卡配置文件修改 网卡配置文件位置&#xff1a; /etc/sysconfig/network-scripts/网卡名 #ifconfig 表示用于显示和设置网卡的参数 #ip addr 表示用于显示和设置网卡的参数 #systemctl restart network 表示重启网络 …