1. Job Roadmap
  2. Home
  3. Problem Set
  4. codenotelist
  5. Forum
  6. course
  7. Shore Share Sessions
  8. Record
  1. Login
  2. Sign Up
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
    ZhContent TextSol AI分析

题面描述

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

  • 有 N 个容量一样的小桶等距排开,且每个小桶都默认装了数量不等的小球,每个小桶装的小球数量记录在数组 bucketBallNums 中。
  • 游戏开始时,要求所有桶的小球总数不能超过 SUM,如果小球总数超过 SUM,则需对所有的小桶统一设置一个容量最大值 maxCapacity,并需将超过容量最大值的小球拿出来,直至小桶里的小球数量小于 maxCapacity。
  • 如果所有小桶的小球总和小于 SUM,则无需设置容量值 maxCapacity,并且无需从小桶中拿球出来,返回结果 []。
  • 如果所有小桶的小球总和大于 SUM,则需设置容量最大值 maxCapacity,并且需从小桶中拿球出来,返回从每个小桶拿出的小球数量组成的数组。

P3186.取出尽量少的球(200分)

    1000ms Tried: 242 Accepted: 47 Difficulty: 5 所属公司 : 华为od
    算法与标签>二分算法

题目内容

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

有 NNN 个容量一样的小桶等距排开,且每个小桶都默认装了数量不等的小球,每个小桶装的小球数量记录在数组 bucketBallNumsbucketBallNumsbucketBallNums 中,

游戏开始时,要求所有桶的小球总数不能超过 SUMSUMSUM,如果小球总数超过 SUMSUMSUM,则需对所有的小桶统一设置一个容量最大值 maxCapacitymaxCapacitymaxCapacity,并需将超过容量最大值的小球拿出来,直至小桶里的小球数量小于 maxCapacitymaxCapacitymaxCapacity。

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

  • 限制规则一:所有小桶的小球总和小于 SUMSUMSUM,则无需设置容量值 maxCapacitymaxCapacitymaxCapacity,并且无需从小桶中拿球出来,返回结果 []

  • 限制规则二:如果所有小桶的小球总和大于 SUMSUMSUM,则需设置容量最大值 maxCapacitymaxCapacitymaxCapacity,并且需从小桶中拿球出来,返回从每个小桶拿出的小球数量组成的数组

输入描述

第一行输入 222 个正整数,数字之间使用空格隔开,其中:

  • 第一个数字表示 SUMSUMSUM

  • 第二个数字表示 bucketBallNumsbucketBallNumsbucketBallNums 数组长度

第二行输入 NNN 个正整数,数字之间使用空格隔开,表示 bucketBallNumsbucketBallNumsbucketBallNums 的每一项

输出描述

从每个小桶里拿出的小球数量,并使用一维数组表示

备注

  • 1≤bucketBallNums[i]≤1091 ≤ bucketBallNums[i] ≤ 10^91≤bucketBallNums[i]≤109

  • 1≤bucketBallNums.length=N≤1051 ≤ bucketBallNums.length = N ≤ 10^51≤bucketBallNums.length=N≤105

  • 1≤maxCapacity≤1091 ≤ maxCapacity ≤ 10^91≤maxCapacity≤109

  • 1≤SUM≤1091 ≤ SUM ≤ 10^91≤SUM≤109

样例1

输入

14 7
2 3 2 5 5 1 4

输出

[0,1,0,3,3,0,2]

说明

小球总数为 222222, SUM=14SUM = 14SUM=14,超出范围了,需从小桶取球,

maxCapacity=1maxCapacity = 1maxCapacity=1,取出球后,桶里剩余小球总和为 777,远小于 141414

maxCapacity=2maxCapacity = 2maxCapacity=2,取出球后,桶里剩余小球总和为 131313,

maxCapacity=3maxCapacity = 3maxCapacity=3,取出球后,桶里剩余小球总和为 161616,大于 141414

因此 maxCapacitymaxCapacitymaxCapacity 为 222 ,每个小桶小球数量大于 222 的都需要拿出来;

样例2

输入

3 3
1 2 3

输出

[0,1,2]

说明

小球总数为 666,SUM=3SUM = 3SUM=3,超出范围了,需从小桶中取球,maxCapacity=1maxCapacity = 1maxCapacity=1,则小球总数为 333,从 111 号桶取 000 个球,222 号桶取 111 个球,333 号桶取 222 个球;

样例3

输入

6 2
3 2

输出

[]

说明

小球总数为 555,SUM=6SUM = 6SUM=6,在范围内,无需从小桶取球;

登录后即可使用 AI 分析。

模式
倒计时时长
:

最长 10 小时 59 分;应用后按此时长重新开始。

提示:点击提交记录在左侧题面区域查看详情
题库
AI分析设置
留空使用官方API Key,每天有次数限制(自定义API Key仅限会员和管理员使用,不限次数)
会员和管理员可切换模型;切到 Kimi/智谱/通义/豆包时需填写对应供应商 API Key
升级会员,可将运行与提交冷却时间缩短至 1 秒起

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 京ICP备2025123107号-1
  2. Worker 3, 69ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

请使用微信扫描下方二维码完成注册

Forgot password or username?