发布时间:2026/7/24 2:33:18
5.10华为OD机试真题 新系统 - 美观的灯笼  (JavaPyCC++JsGo) 美观的灯笼2026 华为OD机试真题 5月10日华为OD上机新系统考试真题 100 分题型点击查看华为 OD 机试真题完整目录2026最新华为OD机试新系统卷 双机位C卷 真题题库目录全覆盖题库 逐点算法考点详解题目描述春节将至工人要在古镇老街挂灯笼。街上有 N 个挂灯点每个点因建筑结构不同工人挂上的灯笼的尺寸M也不同数值越大表示灯笼越大。工人认为美观的灯笼必须按非递增尺寸顺序挂置即后续灯笼尺寸不能超过当前灯笼只能相同或更小。工人完成灯笼挂接后需要你代替他判断1、这排灯笼里满足美观定义的最长连续灯笼区域有多少个灯笼2、这段最长连续区域是从哪个挂灯点开始当存在多个最长连续区域时选择最左边的挂灯点2026 华为OD机试真题 5月10日华为OD上机新系统考试真题 100 分题型输入描述N 个正整数 M1≤M≤100表示每个挂灯点所挂的灯笼尺寸。输出描述输出两个整数第一个是符合题意的灯笼数第二个是开始挂灯笼的挂灯点位置从 0 开始计数。示例1输入[5,3,4,4,2,1]输出[4,2]说明灯笼尺寸序列为 [5,3,4,4,2,1]。存在长度为4的非递增连续子序列[4,4,2,1]位置 2−5。示例2输入[5,4,3,2,1]输出[5,0]说明灯笼尺寸序列为 [5,4,3,2,1]。整个序列满足非递增要求长度为 5起始位置为 0。示例3输入[2,2,2,2]输出[4,0]说明灯笼尺寸序列为 [2,2,2,2]。所有灯笼尺寸相等满足非递增要求长度为 4起始位置为 0。解题思路本题要求在一个整数数组中寻找“最长连续非递增子序列”。 具体来说我们需要找到一个连续的区域使得区域内的灯笼尺寸满足 $M_i \ge M_{i1}$并输出该区域的长度和起始位置。如果存在多个长度相同的最长区域返回最左侧的那个即起始位置索引最小的。我们可以使用一次线性遍历来解决这个问题 1.状态初始化 - 使用best_len记录全局最长非递增区域的长度初始为 1即使只有一个灯笼长度也是 1。 - 使用best_start记录全局最长非递增区域的起始位置初始为 0。 - 使用cur_len记录当前正在考察的非递增区域的长度初始为 1。 - 使用cur_start记录当前正在考察的非递增区域的起始位置初始为 0。线性遍历 - 从第二个灯笼索引 $i 1$开始遍历数组。 - 如果当前灯笼的尺寸小于等于前一个灯笼nums[i] nums[i - 1]说明满足非递增要求当前连续区域长度cur_len增加 1。 - 否则说明非递增区域在这里断开我们需要重新开始计算一个新的区域将cur_len重置为 1并将cur_start更新为当前索引 $i$。结果更新 - 在每次迭代的最后检查cur_len是否严格大于best_len。 - 如果是则更新best_len cur_len同时更新best_start cur_start。 - 必须使用“严格大于”这样在遇到长度相同的连续区域时就不会覆盖之前找到的最左侧的结果完美契合题目“存在多个最长连续区域时选择最左边的挂灯点”的要求。复杂度分析时间复杂度$O(N)$。我们只需要对长度为 $N$ 的数组进行一次从头到尾的线性扫描即可得到结果。空间复杂度$O(1)$。只使用了几个常数级别的变量来记录长度和起始位置不需要额外的存储空间不计算存储输入数组本身的空

相关新闻

2026/7/24 2:33:18

LLama-Factory多模态大模型LoRA微调实战指南

1. 项目背景与核心价值在多模态大模型技术快速发展的当下,如何高效地针对特定视觉任务进行模型适配成为关键挑战。LLama-Factory作为开源训练框架,通过模块化设计解决了传统微调过程中的三大痛点:首先是降低了多模态模型微调的技术门槛&#…

2026/7/24 2:33:18

UART高级协议实战:LIN、RS-485、DALI与硬件流控深度解析

1. UART高级协议支持:从基础到实战的深度解析在嵌入式开发领域,UART(通用异步收发传输器)就像一位沉默寡言但极其可靠的老朋友。几乎所有微控制器都标配这个接口,用来和传感器、蓝牙模块、GPS模组或者另一块MCU“说说话…

2026/7/24 4:03:21

Stable Diffusion参数优化指南:避免AI图像生成的5大陷阱

1. AI图像生成中的关键参数陷阱第一次使用Stable Diffusion生成图片时,我兴奋地输入了"一只会飞的猫"这样的提示词,结果得到的却是一团难以辨认的像素怪物。这个惨痛教训让我意识到,AI图像生成不是简单的文字转图片魔法&#xff0c…

2026/7/24 4:03:21

使用Strands Agents SDK与Amazon Bedrock构建AI代理

1. Strands Agents SDK 与 Amazon Bedrock 技术解析Strands Agents SDK 是一个专为构建生产级 AI Agent 系统设计的 Python 框架,而 Amazon Bedrock 是 AWS 提供的全托管基础模型服务。两者的结合为开发者提供了快速构建智能代理的能力。1.1 Strands Agents SDK 核心…

2026/7/24 4:03:21

THS7327视频AFE芯片:多格式信号调理与抗混叠滤波实战

1. 项目概述与核心价值在嵌入式视频处理、专业显示设备或者投影仪的设计中,模拟前端(AFE)的设计往往是决定最终画质和系统稳定性的关键。我们常常需要面对这样的场景:一个系统需要接入多路视频源(比如HDMI和VGA&#x…

2026/7/24 4:03:21

汽车维保记录精准版 API 快速接入指南

在二手车交易或车辆维保管理中,最让人头疼的往往不是价格谈判,而是信息不对称。买家担心事故车、调表车,卖家则需要一份权威的记录来证明车况。传统的线下查询方式耗时耗力,需要车主亲自跑 4S 店或等待漫长的电话核实,…

2026/7/24 4:03:21

改到第N版设计稿的深夜,大壮决定让AI先替他撞墙

大壮做设计,凌晨一点,电脑上摊着同一张海报的第N版。客户下午发来语音:“感觉不对,再调调”,没说哪不对,只说"你再想想"。他盯着那行字,把主色从蓝换成绿,又换成橙&#x…

2026/7/24 3:58:21

中小企业服务器托管怎么省钱不踩坑?从1U起步到整柜扩容的实战指南

中小企业托管服务器和大厂处境完全不同——预算有限、没有专职运维、业务规模在涨但说不准涨多快。一上来租整柜是浪费,只比单价不看隐性成本又会踩坑。本文以OgCloud IDC服务为例,拆解中小企业托管在起步规格、机房选择、运维外包和扩容路径上的关键决策…

2026/7/23 12:54:51

Unity与Python本地通信:基于Flask的跨语言数据交换实战

1. 项目概述:为什么我们需要一个本地通信服务器?在游戏开发、数字孪生、仿真训练等众多领域,Unity作为强大的实时3D内容创作平台,其核心逻辑通常由C#驱动。然而,当我们需要进行复杂的数据分析、机器学习推理、科学计算…

2026/7/24 0:03:10

不同品牌斜齿行星减速机如何替换?以PX与PAG系列为例

不同品牌斜齿行星减速机如何替换?以 PX 与 PAG 系列为例 一、系列对应不等于型号直接互换 PX 与 PAG 都属于斜齿、方法兰、输出轴式精密行星减速机,结构形式和应用方向具有对应关系。 原设备使用PX系列时,可以优先从PAG系列中寻找替换型号。但…

2026/7/24 0:03:10

jdk8 把list 扁平化成String 多个以逗号分隔

在 JDK 8 中&#xff0c;将 List 扁平化为以逗号分隔的 String&#xff0c;有几种非常简洁且高效的方法。&#x1f680; 推荐方案&#xff1a;使用 Collectors.joining()这是最标准的 Java 8 写法&#xff0c;适用于 List<String>。javaimport java.util.stream.Collecto…

2026/7/24 0:03:10

java 两个 long id 怎么合并成一个long id 并且不重复

“把两个 Long ID 合并成一个唯一的 Long ID&#xff0c;且保证不重复”这个需求&#xff0c;在 Java 里直接做数学上的“完美合并”是不可能的。因为两个 Long&#xff08;各 64 位&#xff09;要合并成一个 Long&#xff08;64 位&#xff09;&#xff0c;在信息论上是有损压…

2026/7/23 23:42:43

3个高效策略:快速掌握Axure中文界面配置

3个高效策略&#xff1a;快速掌握Axure中文界面配置 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文界面感…