5678. 袋子里最少数目的球
难度:中等
给你一个整数数组 nums
,其中 nums[i]
表示第 i
个袋子里球的数目。同时给你一个整数 maxOperations
。
你可以进行如下操作至多 maxOperations
次:
选择任意一个袋子,并将袋子里的球分到 2 个新的袋子中,每个袋子里都有正整数个球。
- 比方说,一个袋子里有
5
个球,你可以把它们分到两个新袋子里,分别有1
个和4
个球,或者分别有2
个和3
个球。
- 比方说,一个袋子里有
你的开销是单个袋子里球数目的 最大值 ,你想要 最小化 开销。
请你返回进行上述操作后的最小开销。
示例 1:
1 | 输入:nums = [9], maxOperations = 2 |
示例 2:
1 | 输入:nums = [2,4,8,2], maxOperations = 4 |
示例 3:
1 | 输入:nums = [7,17], maxOperations = 2 |
提示:
1 <= nums.length <= 105
1 <= maxOperations, nums[i] <= 109
1 | class Solution { |
参考文献