华为OD机试 - 开放日活动、取出尽量少的球(Java)

题目描述

某部门开展Family Day开放日活动,其中有个从桶里取球的游戏,游戏规则如下:

有N个容量一样的小桶等距排开,

且每个小桶都默认装了数量不等的小球,

每个小桶装的小球数量记录在数组 bucketBallNums 中,

游戏开始时,要求所有桶的小球总数不能超过SUM,

如果小球总数超过SUM,则需对所有的小桶统一设置一个容量最大值 maxCapacity,

并需将超过容量最大值的小球拿出来,直至小桶里的小球数量小于 maxCapacity;

请您根据输入的数据,计算从每个小桶里拿出的小球数量。

限制规则一:

所有小桶的小球总和小于SUM,则无需设置容量值maxCapacity,并且无需从小桶中拿球出来,返回结果[]

限制规则二:

如果所有小桶的小球总和大于SUM,则需设置容量最大值maxCapacity,并且需从小桶中拿球出来,返回从每个小桶拿出的小球数量组成的数组;

输入描述

第一行输入2个正整数,数字之间使用空格隔开,其中第一个数字表示SUM,第二个数字表示bucketBallNums数组长度;
第二行输入N个正整数,数字之间使用空格隔开,表示bucketBallNums的每一项;

输出描述

找到一个maxCapacity,来保证取出尽量少的球,并返回从每个小桶拿出的小球数量组成的数组。

备注

  • 1 ≤ bucketBallNums[i] ≤ 1
【华为OD机试 2023】 开放日活动、取出尽量少的球 (C++ Java JavaScript Python) 如果所有小桶的小球总和大于SUM,则需设置容量最大值maxCapacity,并且需从小桶中拿球出来,返回从每个小桶拿出的小球数量组成的数组;第一行输入2个正整数,数字之间使用空格隔开,其中第一个数字表示SUM,第二个数字表示bucketBallNums数组长度;所有小桶的小球总和小于SUM,则无需设置容量值maxCapacity,并且无需从小桶中拿球出来,返回结果[]如果小球总数超过SUM,则需对所有的小桶统一设置一个容量最大值 maxCapacity,请您根据输入的数据,计算从每个小桶里拿出的小球数量。 阅读详情

相关推荐

什么是华为od,od 薪资待遇,od机试题清单,为什么会去华为 OD?华为od怎么刷题?(最新华为od机试2025B卷刷题建议)

华为OD是Outsourcing Dispacth模式,是华为和外企德科联合招聘的简称。目前华为大多数是OD招聘。OD模式也是华为提出的一种新的用工形式,每年都会从OD项目挑优秀员工转为正编。所有OD和正式员工一样对待,没有差别,部门平时开会、评审等活动都是一起参加的,是同薪同酬,都是由华为的HR直接定的薪资,看的是我们技术能力。华为是大企业,能到华为上班也是有能力的,每个部门都有好多职位,是金子,在哪都会发光。

KJ.JK 10万+

【部门减负】

已支持(Java & JS & Python & C & C++),实现:二分法

优快云 4971

深入解析华为OD机试:开放日活动“取出尽量少的球”题解及C++、Java、JavaScript、Python详细实现

计算球总数:先判断是否超过了SUM,如果没有超过则返回[]。确定范围:使用maxBalls作为二分查找的右边界,1作为左边界。二分查找:每次计算一个mid值,计算出所有桶中限制在mid时的总球数。如果总球数小于等于SUM,则更新左边界,反之更新右边界。计算结果:找到合适的后,计算每个桶中需要取出的球数,返回结果。本文从题目理解到解题思路的细化,详细阐述了如何通过二分查找法解决这道题目,并提供了C++、Java、JavaScript、Python四种语言的完整实现。

m0_57781768的博客 484

华为OD机试 - 取出尽量少的球 - 感谢@吴修柯反馈(Python/JS/C/C++ 双机位A卷 200分)

本专栏收录于《华为OD机试真题(Python/JS/C/C++)》。刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新。感谢@吴修柯反馈,2025-03-22,A卷200分考试真题。某部门开展 Family Day 开放日活动,其中有个从桶里取球的游戏。有 N 个容量一样的小桶等距排开,且每个小桶都默认装了数量不等的小球,每个小桶装的小球数量记录在数组 bucke

学Java,找哪吒 1486

【华为OD机试真题】214、开放日活动、取出尽量少的球 | 机试真题+思路参考+代码分析(C++、Java、Py、C语言、JS)

题目描述 >某部门开展Family Day开放日活动,其中有个从桶里取球的游戏,游戏规则如下: >  有N个容量一样的小桶等距排开,且每个小桶都默认装了数不等的小球, >  每个小桶装的小球数量记录在数组bucketBallNums中, >  游戏开始时,要求所有桶的小球总数不能超过SUM, >  如果小球总数超过SUM,则需对所有的小桶统一设置一个容量大值maxCapacity,并需将超过容量最大值的小球拿出来,直到小桶里的小球数量小于maxCapacity; >&

KJ.JK 1427

华为OD机试 - 开放日活动、取出尽量少的球(Java)

因此,我们可以发现,maxCapacity取值2时,剩余球数最多,总数量小于SUM=14,符合要求,且取出的球最少,分别为0,1,0,3,3,0,2。如果maxCapacity值设置为2,则所有桶中的球最多只保留2个,如下图所示,剩余球总数13个,也符合要求。如果maxCapacity值设置为3,则所有桶中的球最多只保留3个,如下图所示,剩余球总数17个,不符合要求。如果maxCapacity值设置为1,则所有桶中的球最多只保留1个,如下图所示,剩余球总数7个,也符合要求。

qq_34143141的博客 175

【华为OD机试真题】214、开放日活动、取出尽量少的球 | 机试真题+思路参考+代码分析(C语言、C++、Java、Py、JS)

题目描述 >某部门开展Family Day开放日活动,其中有个从桶里取球的游戏,游戏规则如下: >  有N个容量一样的小桶等距排开,且每个小桶都默认装了数不等的小球, >  每个小桶装的小球数量记录在数组bucketBallNums中, >  游戏开始时,要求所有桶的小球总数不能超过SUM, >  如果小球总数超过SUM,则需对所有的小桶统一设置一个容量大值maxCapacity,并需将超过容量最大值的小球拿出来,直到小桶里的小球数量小于maxCapacity; >&

KJ.JK 239

【华为OD机试真题 Java语言】214、开放日活动、取出尽量少的球 | 机试真题+思路参考+代码解析

>某部门开展Family Day开放日活动,其中有个从桶里取球的游戏,游戏规则如下: >  有N个容量一样的小桶等距排开,且每个小桶都默认装了数不等的小球, >  每个小桶装的小球数量记录在数组bucketBallNums中, >  游戏开始时,要求所有桶的小球总数不能超过SUM, >  如果小球总数超过SUM,则需对所有的小桶统一设置一个容量大值maxCapacity,并需将超过容量最大值的小球拿出来,直到小桶里的小球数量小于maxCapacity; > 

KJ.JK 1173

华为OD机试2023(JS,C++,JAVA,PYTHON)-开放日活动,取出尽量少的球

​某部门开展Family Day开放日活动,其中有个从桶里取球的游戏,游戏规则如下: 有N个容量一样的小桶等距排开, 且每个小桶都默认装了数量不等的小球, 每个小桶装的小球数量记录在数组 bucketBallNums 中, 游戏开始时,要求所有桶的小球总数不能超过SUM, 如果小球总数超过SUM,则需对所有的小桶统一设置一个容量最大值 maxCapacity, 并需将超过容量最大值的小球拿出来,直至小桶里的小球数量小于 maxCapacity; 请您根据输入的数据,计算从每个小桶里拿

qznjj6的博客 97

【华为OD机试真题】214、开放日活动、取出尽量少的球 | 机试真题+思路参考+代码分析(C++、Java、Py、JS)

题目描述 >某部门开展Family Day开放日活动,其中有个从桶里取球的游戏,游戏规则如下: >  有N个容量一样的小桶等距排开,且每个小桶都默认装了数不等的小球, >  每个小桶装的小球数量记录在数组bucketBallNums中, >  游戏开始时,要求所有桶的小球总数不能超过SUM, >  如果小球总数超过SUM,则需对所有的小桶统一设置一个容量大值maxCapacity,并需将超过容量最大值的小球拿出来,直到小桶里的小球数量小于maxCapacity; >&

正在更新最新华为OD机试2025B卷,提供OJ在线刷题 2960

【华为OD机试真题 2025A卷】613、开放日活动、取出尽量少的球 | 机试真题+思路参考+代码解析(C++、Java、Py)(A卷复用)

【华为OD机试真题 2025A卷】613、开放日活动、取出尽量少的球 | 机试真题+思路参考+代码解析(C++、Java、Py)(A卷复用)

KJ.JK 1584

【华为OD机试真题 2025C卷】214、开放日活动、取出尽量少的球 | 机试真题+思路参考+代码解析(C++、Java、Py、C语言、JS)

【华为OD机试真题 2025C卷】214、开放日活动、取出尽量少的球 | 机试真题+思路参考+代码解析(C++、Java、Py、C语言、JS) 华为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机试2025B卷,提供OJ在线刷题 1671

【满分】【华为OD机试真题2023 JAVA&JS】取出尽量少的球

取出尽量少的球 题目描述:某部门开展Family Day开放日活动,其中有个从桶里取球的游戏,游戏规则如下:有N个容量一样的小桶等距排开,且每个小桶都默认装了数量不等的小球,每个小桶所装的小球数量记录在数组bucketBallNums中,游戏开始时,要求所有桶的小球总数不能超过SUM,如果小球总数超过SUM,则需对所有的小桶统一设置一个容量最大值maxCapacity,并需将超过容量最大值的小球拿出来,直至小桶里的小球数量小于maxCapacity;请您根据输入的数据,计算从每个小桶里拿出的小球数量

qq_34465338的博客 4606

ESP32-C3微型9轴感知模块的硬件工程实践

在嵌入式系统小型化趋势下,低功耗微控制器与多传感器融合成为智能终端的基础技术路径。其核心原理在于芯片能效比、射频合规性与电源噪声抑制的协同优化,技术价值体现在降低认证门槛、提升EMC鲁棒性及保障MEMS传感器精度。典型应用场景包括可穿戴设备、微型无人机姿态控制和工业边缘传感节点。本文围绕ESP32-C3平台展开,深入解析QFN封装选型逻辑、同步降压电源设计、LSM9DS1九轴校准策略等关键环节,覆盖FCC/CE认证规避、USB-C接口EMC防护等高频工程痛点。

weixin_42607969的博客 368

Windows中的TLS 1.2启用方法(IIS、C#、.Net framework)

折腾几天了windows中的tls1.2启用方法!特此记录一下 开发背景: 在一个用.net framework 2.0开发的客户端程序里面嵌入功能调用第三方物联网相关接口,服务器上有一个restful接口用于接收第三方上报的数据及处理,最后再调用第三方的物联网相关接口。本机开发环境Windows 10,客户服务器是Windows Server 2008 R2。 第一次写这种物联网相关的接口调用,而且第三方提供的文档比较简单,最基本的报文示例都没。开发环境里面各种摸索一步一个坑,首先在发送HTTP请求前

dl1314ld的博客 1万+

学习笔记之——Event Camera(事件相机)调研

概述 Event Camera是一种bio-inspired sensor,对应的领域为bio-inspired vision。对于传统的相机,从某种程度上,是捕获一个静态/静止的空间,而Event Camera的目的是:敏感地捕捉运动的物体。 对于传统RGB-camera,相机传回的信息是同步的,所谓同步,就是在某一时刻t,相机会进行曝光,把这一时刻所有的像素填在一个矩阵里回传,一张照片就诞生了。一张照片上所有的像素都对应着同一时刻。至于视频,不过是很多帧的图片,相邻图片间的时间间隔...

gwpscut的博客 3万+

华为星闪SLE实战:手把手教你用HarmonyOS开发智能家居控制应用(附完整代码)

本文详细介绍了如何利用华为星闪SLE技术,结合HarmonyOS开发智能家居控制应用。通过对比传统无线技术,阐述了星闪SLE在低时延、高可靠性和高并发方面的优势,并提供了从环境搭建、设备发现、连接管理到核心控制代码的完整实战教程,帮助开发者快速上手这一无线短距通信技术。

bert9linguist的博客 506

节卡Jaka Zu APP编程避坑指南:从频繁通讯错误到稳定Socket交互的调试心得

本文详细解析了节卡Jaka Zu APP编程中常见的通讯错误问题,并提供了从基础排查到高级调试的完整解决方案。通过优化网络配置、固件匹配、心跳机制和数据交互规范,开发者可实现稳定的Socket通讯,有效提升工业机器人操控的可靠性。文章特别针对v1.6.7.3版本的典型问题给出了实用调试技巧。

weixin_42639633的博客 325

3步!Spring Boot+OCR引擎秒提身份证/营业执照?手把手教你从零实现!

OCR技术革新文档识别效率 本文演示了如何利用Spring Boot+Tesseract OCR+OpenCV构建自动化文档识别系统。相比传统人工录入,OCR技术可实现: 5秒极速提取身份证/营业执照关键信息 精准识别中文文本(准确率90%+) 正则过滤自动匹配结构化数据 技术要点: OpenCV图像预处理(灰度化+二值化) Tesseract多语言OCR识别 正则表达式精准提取证件号码 效率提升达100倍,错误率降低90%,适用于金融、政务等需要批量处理证件的场景。

java专栏 905

MATLAB - 使用 RRT 进行挖掘机运动规划

本例演示了如何使用运动规划器在包含障碍物的环境中为挖掘机规划路径。在此示例中,您将以运动树的简化形式为挖掘机建模,然后使用基于采样的运动规划器确定挖掘机在存在障碍物的两个姿势之间的可行路径。在 Simscape™ 多体™ 模型中模拟结果。

机器人控制与仿真应用 1850

手把手教你学PCIE(2.1.23)--PCIe基本概念:链路速率协商

链路速率协商是一个多步骤的过程,确保发送端和接收端之间的链路速率设置一致。通过初始化链路速率寄存器、发送和接收 TS2 序列、检测链路对端的存在、交换链路速率信息、确定最大链路速率和配置链路速率,可以确保 PCIe 设备之间的数据传输速度最大化,从而提高数据传输效率。初始化链路速率寄存器:设置支持的最大链路速率。发送和接收 TS2 序列:检测链路对端的存在。交换链路速率信息:发送和支持的最大链路速率。确定最大链路速率:选择最小值作为最终链路速率。配置链路速率:更新链路速率寄存器。

MHD0815的博客 1816

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

上一篇: 华为OD机试 - 最大报酬(Java)
下一篇: 华为校招机试 - 简单的自动曝光、平均像素值(Java)
清水乐园
博客等级 码龄13年 175粉丝 398原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

打赏作者

清水乐园

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

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

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

打赏作者

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

抵扣说明:

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

余额充值