华为OD机试 - 流浪地球 - 感谢@on your left反馈(Python/JS/C/C++ 双机位A卷 100分)

AI摘要

本文分析华为OD机试中关于发动机手动与关联启动的算法题,通过模拟启动传播过程,找出最晚启动的发动机编号。核心在于计算每个发动机的最早启动时间,并识别最大延迟节点。

感谢@on your left反馈,2025-04-01,A卷100分考试真题。

在这里插入图片描述

一、题目描述

流浪地球计划在赤道上均匀部署了 N 个转向发动力,按位置顺序编号为 0 ~ N。

  1. 初始状态下所有的发动力都是未启动状态
  2. 发动力启动的方式分为“手动启动”和“关联启动”两种方式
  3. 如果在时刻t1一个发动机被启动,下一时刻t2与之相邻的两个发动机就会被“关联启动”;
  4. 如果准备启动某个发动机时,它已经被启动了,则什么都不用做;
  5. 发动机0与发动机N-1是相邻的;

地球联合政府准备挑选某些发动力在某些时刻进行“手动启动”。当然最终所有的发动力都会被启动。哪些发动力最晚被启动呢?

二、输入描述

第一行两个数字 N 和 E,中间有空格

  • N 代表部署发动力的总个数,1 ≤ N ≤ 1000
  • E 代表计划手动启动的发动力个数,1 ≤ E ≤ 1000,E ≤ N

接下来 E 行,每行包含两个数字 T 和 P,中间有空格

  • T 代表这台发动力的手动启动时间,0 ≤ T ≤ N
  • P 代表发动力的位置编号,0 ≤ P < N

三

华为OD机试 - 流浪地球 - 感谢@on your left反馈(Java 双机位A卷 100分) 发动机之间存在关联性,因此当发动机 0 启动后,其他发动机会逐步受到影响,并在最短距离内启动。当然最终所有的发动力都会被启动。这道题目要求我们在给定多个发动机的情况下,通过手动启动和关联启动的方式,找出哪些发动机在整个过程中最晚被启动。发动机可以通过关联启动方式启动,关联启动的发动机在时间上会有延迟,这个延迟是根据发动机编号之间的距离计算的。经过计算,最终发现 0 号和 4 号发动机是最晚启动的发动机,它们启动的时间都是 2。经过关联启动后,发动机 2 和 3 最晚启动,它们的启动时刻均为 2。 阅读详情

相关推荐

华为OD机考2025C卷 -流浪地球 (Java & Python& JS & C++ & C )

华为OD机考2025C卷 -流浪地球 (Java & Python& JS & C++ & C )

算法大师! 2万+

华为OD机试2025年E卷-流浪地球[100分]( Java | Python3 | C++ | C语言 | JsNode | Go)实现100%通过率

流浪地球计划在赤道上均匀部署了N个转向发动机,按位置顺序编号为0~N。1) 初始状态下所有的发动机都是未启动状态;2) 发动机启动的方式分为”手动启动"和”关联启动"两种方式;3) 如果在时刻1一个发动机被启动,下一个时刻2与之相邻的两个发动机就会被”关联启动”;4) 如果准备启动某个发动机时,它已经被启动了,则什么都不用做;5)发动机0与发动机N-1是相邻的;地球联合政府准备挑选某些发动机在某些时刻进行“手动启动”。当然最终所有的发动机都会被启动。哪些发动机最晚被启动呢?

算法算法算法!!! 2793

华为OD机试 新系统 双机位C卷 往年真题 机考题库(持续收录中)以及算法考点详解(Python/JS/C/C++)

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释发现新题目,随时更新。

学Java,找哪吒 5万+

【100分-流浪地球】(题目+思路+Java&C++&Python解析+在线测试)

对于一个手动启动的发动机会对全部发动机都造成影响,由于数据只有1e3级别,考虑n2暴力,由于是一个环,t时间,x传到y的关联启动有两个一个t1是abs(x-y),另外一个t2是n-abs(x-y),得到关系转移ans[y]=min({ans[y],t1+t,t2+t});地球联合政府准备挑选某些发动机在某些时刻进行“手动启动”,当然最终所有的发动机都会被启动,哪些发动机最晚被启动呢?4.如果准备启动某个发动机时,它已经被启动了,则什么都不用做。至此所有发动机都被启动,最后被启动的有。行,每行都是两个数字。

m0_73659489的博客 2012

华为OD机试 2025C卷 - 流浪地球 (C++ & Python & JAVA & JS & GO)

华为OD机试2025C卷 流浪地球,提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解

qq_45776114的博客 1209

E-流浪地球(100p)

使用一个数组来记录每个发动机的启动时间,初始化为一个足够大的值表示未启动。然后按照输入的顺序模拟手动启动和关联启动的过程。地球联合政府准备挑选某些发动机在某些时刻进行"手动启动",当然最终所有的发动机都会被启动。8 个发动机,时刻 0 启动 0 号发动机,时刻 1 启动 7 号发动机。个整数,表示最后被启动的发动机的位置编号,从小到大排序,用空格分隔。8 个发动机,时刻 0 启动 2 和 6 号发动机。对于给定的数据范围,这个解法是足够的。个转向发动机,按位置顺序编号为。,表示最后被启动的发动机个数。

春秋招笔试突围 8184

华为OD机试 - 流浪地球(Java)

如果在时刻 1 一个发动机被启动,下一个时刻 2 与之相邻的两个发动机就会被“关联启动”时刻1启动(1,3,5,7)(其中1,3被2关联启动,5,7被6关联启动);E 代表计划手动启动的发动机总个数,1 ≤ E ≤ 1000,E ≤ N。时刻2启动(0,4)(其中0被1,7关联启动,4被3,5关联启动);至此所有发动机都被启动,最后被启动的有2个,分别是0和4。如果准备启动某个发动机时,它已经被启动了,则什么都不用做。T 代表发动机的手动启动时刻,0 ≤ T ≤ N。N 代表最后被启动的发动机个数。

wtswts1232的博客 840

流浪地球~

如果发动机 pos 在当前时间 time 启动,则在下一个时间 time + 1,它的相邻发动机 (pos - 1 + N) % N 和 (pos + 1) % N 将被关联启动(考虑环形结构,即 0 和 N-1 也是相邻的)。我们需要根据给定的手动启动时刻,计算所有发动机最终被启动的时刻,并找出最后被启动的那些发动机。- 发动机状态表示:我们用一个数组 activationTime 来记录每个发动机的启动时间,初始时所有发动机的启动时间都设置为 -1,表示未启动。

面试高手的博客 5158

华为OD- 流浪地球-2024年OD(E卷)

流浪地球计划在赤道上均匀部署了 N 个转向发动机,按位置顺序编号为 0 ~ N初始状态下所有的发动机都是未启动状态发动机启动的方式分为“手动启动”和“关联启动”两种方式如果在时刻 1 一个发动机被启动,下一个时刻 2 与之相邻的两个发动机就会被“关联启动”如果准备启动某个发动机时,它已经被启动了,则什么都不用做发动机 0 与发动机 N-1 是相邻的地球联合政府准备挑选某些发动机在某些时刻进行“手动启动”。当然最终所有的发动机都会被启动。哪些发动机最晚被启动呢?

蜗牛快快快快跑的博客 1006

华为OD机试 - 流浪地球(C++)

题目描述流浪地球计划在赤道上均匀部署了 N 个转向发动机,按位置顺序编号为 0 ~ N初始状态下所有的发动机都是未启动状态发动机启动的方式分为“手动启动”和“关联启动”两种方式如果在时刻 1 一个发动机被启动,下一个时刻 2 与之相邻的两个发动机就会被“关联启动”如果准备启动某个发动机时,它已经被启动了,则什么都不用做发动机 0 与发动机 N-1 是相邻的地球联合政府准备挑选某些发动机在某些时刻进行“手动启动”。当然最终所有的发动机都会被启动。哪些发动机最晚被启动呢?输入描述。

AlgorithmHero的博客 195

环形山信号塔

已支持(Java & JS & Python & C & C++),实现:逻辑分析

优快云 2万+

【华为OD机试真题 JS语言】487、流浪地球 | 机试真题+思路参考+代码解析(E卷新题)

【华为OD机试真题JS语言】487、流浪地球|机试真题+思路参考+代码解析(E卷新题) 华为od机试,华为od机试真题,华为od机试E卷,华为odE卷,华为od机试真题E卷,华为OD,华为OD机试,华为OD机试真题,华为od机考,华为od机试D卷,华为od机试真题D卷,华为od手撕代码,华为od,华为od机试C卷,华为ode卷,华为2025e卷,od机试,2025E卷,华为OD机试E卷,什么是华为od,华为od介绍,全面了解华为od,2025华为od,如何备战华为od,华为od算法,华为od手撕代码

KJ.JK 4358

【华为OD机试真题 2025A卷】633、流浪地球 | 机试真题+思路参考+代码解析(C++、Java、Py)(A卷复用)

【华为OD机试真题 2025A卷】633、流浪地球 | 机试真题+思路参考+代码解析(C++、Java、Py)(A卷复用) 华为od机试,华为od机试真题,华为od机试E卷,华为odE卷,华为od机试真题E卷,华为OD,华为OD机试,华为OD机试真题,华为od机考,华为od机试D卷,华为od机试真题D卷,华为od手撕代码,华为od,华为od机试C卷,华为od e卷,华为2025e卷,od机试,2025E卷,华为OD机试E卷,什么是华为od,华为od介绍,全面了解华为od,2025华为od,如何备战华为od

KJ.JK 2184

Python爬取腾讯视频m3u8加密流实战(附完整代码)

本文提供了一份详细的Python实战教程,指导如何通过抓包分析、模拟请求头与载荷,破解腾讯视频的m3u8加密流防盗链机制,并附上完整代码实现视频片段的下载与合并。教程涵盖从侦察到代码实现的完整流程,并包含参数动态化、多线程下载等高级技巧与避坑指南,旨在帮助开发者掌握流媒体下载的核心技术。

weixin_29090089的博客 1589

手把手教你用VMware虚拟机搭建PCAN开发环境:从Ubuntu安装到CAN通讯实战

本文详细指导如何在VMware虚拟机中搭建PCAN开发环境,涵盖从Ubuntu系统安装、VMware精细配置、PCAN-USB设备直通,到Linux驱动编译、can-utils工具集使用及完整CAN通讯测试的全过程。通过实战步骤与故障排查技巧,帮助开发者快速构建稳定高效的CAN总线开发与测试沙盒,特别适合车载诊断与嵌入式通讯应用。

weixin_29216353的博客 221

核磁干货 | RESTplus实战:静息态fMRI预处理全流程解析

本文详细解析了使用RESTplus工具包进行静息态fMRI数据预处理的完整流程,包括数据准备、环境配置、预处理步骤及高级分析技巧。RESTplus作为基于SPM的批处理工具,以其图形化界面和智能化参数设置显著提升了核磁静息态数据分析的效率,特别适合新手和临床研究人员。文章还分享了实战中的常见问题解决方案和性能优化技巧。

wine的专栏 880

UE4项目迁移指南:如何无缝导入外部.uasset文件并保持材质关联

本文详细解析了将外部.uasset文件无缝导入UE4项目的专业方法。针对手动复制文件时常见的材质关联丢失问题,提供了使用引用查看器进行诊断和修复的实用技巧,并推荐使用引擎内置的“迁移”功能确保资源依赖关系的完整性,帮助开发者高效整合项目资源。

t8u9v0的博客 1046

ABAP Cloud:面向云时代的 ABAP 开发范式与实践指南

摘要: 本文系统讲解SAP ABAP Cloud开发模型,涵盖其架构、工具链、规范及实践。ABAP Cloud作为统一开发模型,支持在SAP BTP和S/4HANA上构建云就绪应用,遵循clean core原则,通过RAP(RESTful应用编程模型)实现低耦合扩展。文章详细解析其核心构成(RAP、稳定API、clean core约束)、工具链(ADT、软件物流)及两种典型扩展场景(on-stack与side-by-side),并附可运行RAP示例代码(如销售笔记应用)。重点强调通过规范开发确保系统可升级性

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 388

Python 爬虫实战:分析 AJAX 请求抓取搜狐新闻数据

在Web 2.0时代,大量网站采用AJAX技术实现动态内容加载。传统基于静态HTML解析的爬虫技术(如BeautifulSoup)已无法应对这类场景。本文将以搜狐新闻为实战目标,详解如何通过分析AJAX请求接口实现动态新闻数据的精准抓取。

yansideyucsdn的博客 1750

vue3 - 实现WebRTC播放实时rtsp视频流+NVR录像机回放,web前端浏览器网页播放RTSP推流,支持海康威视大华等摄像头/监控设备对接(监控摄像头录像及回放,拿到rtsp视频流如何处理)

vue3,webrtc-streamer,rtsp视频流,监控画面,nvr录像机,回放功能,监控摄像头设备,vue3播放Rtsp推流示例代码,前端如何在vue3项目中播放rtsp视频流,VUE中播放RTSP实时推流播放解决方案,vue3 webrtc播放rtsp视频流,vue3实现rtsp视频流浏览器实时播放,海康摄像机、NVR、流媒体服务器、回放取流RTSP地址,vue3+vite+ts 使用webrtc-streamer播放海康rtsp监控视频,播放海康rtsp监控视频,海康摄像机/录像机预览+回放RT

✅ 精选推荐文章 1万+

OpenGL ES 3.0 开发(一):绘制一个三角形

该原创文章首发于微信公众号:字节流动 什么是 OpenGLES OpenGLES 全称 OpenGL for Embedded Systems ,是三维图形应用程序接口 OpenGL 的子集,本质上是一个跨编程语言、跨平台的编程接口规范,主要应用于嵌入式设备,如手机、平板等。由科纳斯(Khronos)组织定义和推广,科纳斯是一个图形软硬件行业协会,该协会主要关注图形和多媒体方面的开放标准。 O...

字节流动 8万+

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

上一篇: 华为OD机试 - 学生重新排队 - 贪心算法(Python/JS/C/C++ 2024 E卷 200分)
下一篇: 华为OD机试 - 模拟目录管理功能 - 栈(Python/JS/C/C++ 2024 E卷 100分)
哪 吒
哪 吒 2022年度博客之星TOP 1 2022年度博客之星TOP 1 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄9年 59万+粉丝 2933原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哪 吒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值