当前位置: 首页 > wzjs >正文

网站模板整站资源长春建设厅网站

网站模板整站资源,长春建设厅网站,wordpress 形式php,seo技术外包 乐云践新专家2025 A卷 100分 题型 本专栏内全部题目均提供Java、python、JavaScript、C、C++、GO六种语言的最佳实现方式; 并且每种语言均涵盖详细的问题分析、解题思路、代码实现、代码详解、3个测试用例以及综合分析; 本文收录于专栏:《2025华为OD真题目录+全流程解析+备考攻略+经验分…

在这里插入图片描述

2025 A卷 100分 题型

本专栏内全部题目均提供Java、python、JavaScript、C、C++、GO六种语言的最佳实现方式;
并且每种语言均涵盖详细的问题分析、解题思路、代码实现、代码详解、3个测试用例以及综合分析;
本文收录于专栏:《2025华为OD真题目录+全流程解析+备考攻略+经验分享》

华为OD机试真题《阿里巴巴找黄金宝箱Ⅰ》:


文章快捷目录

题目描述及说明

Java

python

JavaScript

C

GO


题目名称:阿里巴巴找黄金宝箱Ⅰ


  1. 知识点:前缀和、双指针(或逻辑模拟)
  2. 时间限制:1秒
  3. 空间限制:256MB
  4. 限定语言:不限

题目描述

一贫如洗的樵夫阿里巴巴在去砍柴的路上,无意中发现了强盗集团的藏宝地,藏宝地有编号从0~N的箱子,每个箱子上面贴有一个数字,箱子中可能有一个黄金宝箱。
黄金宝箱满足:排在它之前的所有箱子数字和等于排在它之后的所有箱子数字和;

  • 第一个箱子左边部分的数字和定义为0;
  • 最后一个宝箱右边部分的数字和定义为0。
    请帮阿里巴巴找到黄金宝箱,输出第一个满足条件的黄金宝箱编号,如果不存在黄金宝箱,请返回-1。

输入描述
箱子上贴的数字列表,使用逗号分隔,例如:1,-1,0

  • 宝箱的数量不小于1个,不超过10000;
  • 宝箱上贴的数值范围不低于-1000,不超过1000。

输出描述
第一个黄金宝箱的编号(从0开始计数)。

示例

  1. 输入:2,5,-1,8,6,输出:3
    • 下标3之前的数字和为:2 + 5 + -1 = 6,之后的数字和为:6 = 6
  2. 输入:8,9,输出:-1(无满足条件的位置)。
  3. 输入:11,输出:0(下标0左右和均为0)。

Java

问题分析

我们需要找到数组中第一个满足左边元素和等于右边元素和的索引位置。左边和右边的定义分别为该位置前所有元素的和及该位置后所有元素的和。若不存在这样的位置,返回-1。

解题思路

  1. 总和计算:首先计算数组所有元素的总和。
  2. 遍历检查:遍历数组,维护一个累积的左边和 leftSum。对于每个位置 i,右边的和为 totalSum - leftSum - nums[i]。如果左边和等于右边的和,则返回当前索引。
  3. 线性时间复杂度:该方法只需两次遍历数组(一次计算总和,一次查找位置),时间复杂度为 O(n),空间复杂度为 O(1)(不考虑输入存储空间)。

代码实现

public class Main {public static void main(String[] args) {// 读取输入并转换为整数数组java.util.Scanner scanner = new java.util.Scanner(System.in);String input = scanner.nextLine();String[] parts = input.split(",");int[] nums = new int[parts.length];for (int i = 0; i < parts.length; i++) {nums[i] = Integer.parseInt(parts[i]);}// 计算总和int totalSum = 0;for (int num : nums) {totalSum += num;}// 遍历数组查找黄金宝箱位置int leftSum = 0;for (int i = 0; i < nums.length; i++) {int current = nums[i];// 右边的和 = 总和 - 左边和 - 当前元素值int rightSum = totalSum - leftSum - current;if (leftSum == rightSum) {System.out.println(i);return;}leftSum += current;}// 未找到符合条件的宝箱System.out.println(-1);}
}

代码详解

  1. 输入处理

    • scanner.nextLine() 读取输入字符串。
    • split(",") 将字符串按逗号分割成字符串数组。
    • 转换为 int[] 数组 nums
  2. 总和计算

    • 遍历数组累加所有元素的值得到 totalSum
  3. 遍历检查

    • 初始化 leftSum 为0,表示当前位置左边的累积和。
    • 遍历每个元素 nums[i],计算右边的和 rightSum
    • 如果 leftSum 等于 rightSum,输出当前索引并结束程序。
    • 否则,将当前元素值加到 leftSum 中,继续下一个元素。
  4. 结果输出

    • 若遍历结束未找到符合条件的索引,输出-1。

示例测试

示例1
输入:2,5,-1,8,6
输出:3
解析:索引3左边和为2+5+(-1)=6,右边和为6,相等。

示例2
输入:8,9
输出:-1
解析:两个位置均不满足左边和等于右边和。

示例3
输入:11
输出:0
解析:左边和与右边和均为0。

综合分析

  1. 时间复杂度:两次遍历数组,时间复杂度为 O(n),n为数组长度。对于最大输入规模1e4,完全可行。
http://www.dtcms.com/wzjs/538615.html

相关文章:

  • 精品资源共享课程网站建设论文网站托管是什么意思
  • 朝阳做网站东营企业网站排名
  • c 做网站优点短链接生成器官方
  • 可以开发哪些网站专门做视频的网站有哪些
  • 河北网站建设哪家公司好百度搜索网址大全
  • 哪里做公司网站微网站 服务器
  • 免费虚拟空间网站专门做包包的网站
  • 有做a50期货的网站wordpress适合做什么
  • 矿泉水网站模板wordpress滑动门短代码
  • 做网站一般是什么工作门户地方网站 策略
  • 19寸 网站做多大小型行业网站建设维护成本
  • .net 手机网站源码下载wordpress软件网站主题
  • visual c 网站开发专业网站设计怎么做
  • 网站推广一站式服务wordpress 课程系统
  • 网站域名百度云网站环境建设济南营销网站制作公司哪家好
  • 好的网页设计网站营销网站建设是什么意思
  • delphi 做直播网站域名解析在线
  • 网站架构设计师工资做网站工资年新多少在广东
  • 珠海市规划建设局网站什么网站可以直接做word
  • 省住房和城乡建设厅官方网站wordpress标题后缀
  • 定制搭建网站广州做公司网站
  • wordpress和帝国会员整合超级seo助手
  • 永仁县建设信息网站廊坊做网站教程
  • 西宁做网站最好的公司佛山网站设计
  • 丽水建设局门户网站平台型网站制作
  • 宁波龙山建设有限公司网站国外c2c平台
  • 网站推广怎么做与发布江西泰飞建设有限公司网站
  • 织梦做淘宝客网站视频教程WordPress代码实现标签页面
  • 苏州优化网站哪家好wordpress页面禁止评论
  • 西宁设计网站建设wordpress 函数重写