首页 > 其他分享 >1760. 袋子里最少数目的球

1760. 袋子里最少数目的球

时间:2022-12-20 11:47:18浏览次数:64  
标签:少数 right nums int mid maxOperations 袋子 1760 left

1760. 袋子里最少数目的球

题解:
二分
1.题目可以转换为:操作 maxOperations 次,每个袋子的最大值小于等于 ans,求这个ans的最小值
2.可以从[1, nums数组的最大值]这个区间开始二分
3.判断函数:

  • nums[i] <= ans opt = 0
  • nums[i] > ans opt = (nums[i] - 1) / ans
class Solution {
    public int minimumSize(int[] nums, int maxOperations) {
        int left = 1;
        int right = 0;
        int n = nums.length;
        for (int i = 0; i < n; i++) {
            right = Math.max(right, nums[i]);
        }
        while (left < right) {
            int mid = (left  + right ) / 2 ;
            if (check(mid,nums,maxOperations)) left = mid + 1;
            else right = mid;
        }
        return left;
    }

    private boolean check(int mid, int[] nums, int maxOperations) {
        int opt = 0;
        for (int i = 0; i < nums.length; i++) {
            if (nums[i] > mid) {
                opt += (nums[i] - 1) / mid;
            }
        }
        return opt > maxOperations;
    }
}

标签:少数,right,nums,int,mid,maxOperations,袋子,1760,left
From: https://www.cnblogs.com/eiffelzero/p/16993850.html

相关文章

  • [C++]LeetCode 1760 袋子里最少数目的球
    [C++]LeetCode1760.袋子里最少数目的球题目描述Difficulty:中等RelatedTopics:数组,二分查找给你一个整数数组nums,其中nums[i]表示第i个袋子里球的数目。......
  • 如何查询结构化数据表有多少数据?
    kubectlgetpods-owide|grepmysql-->>找到数据库所在的机器节点如下图到g01r01n04机器上执行cd/data/local-path-provisioner/,执行ll一下可以看到如下图cd......
  • LeetCode 452.用最少数量的箭引爆气球
    LeetCode452.用最少数量的箭引爆气球题目链接:​​https://leetcode-cn.com/problems/minimum-number-of-arrows-to-burst-balloons/​​题目描述:在二维空间中有许多球形......
  • leetcode1760
    袋子里最少数目的球Category Difficulty Likes Dislikesalgorithms Medium(54.80%) 98 -TagsCompanies给你一个整数数组nums,其中nums[i]表示第i个袋子里球的数......
  • LeetCode 452. 用最少数量的箭引爆气球
    贪心1、先按照所有起球的右边界排序,记录第一个气球的右边界位置,如果后续气球的左边界小于记录中的值那么这个气球就是可以被箭射中的,这种情况不做处理。2、当出现遍历的......
  • 墨门云上网行为审计事前预防,减少数据泄露风险
    据数据显示,数据泄露事件绝大部分是由内部威胁造成的。因此,企业应当知道如何预防内部威胁,避免数据泄露事件发生;现在很多企业都选择部署上网行​为管理系统,通过上网行为审计,了......
  • 452.minimum-number-of-arrows-to-burst-balloons 用最少数量的箭引爆气球
    问题描述452.用最少数量的箭引爆气球解题思路首先,按照\(x_start\)从小到大的顺序排序,然后开始分析需要的弓箭数。if(points[i][0]>points[i-1]),说明两个气球不存......
  • 代码随想录day35 | 860.柠檬水找零 406. 根据身高重建队列 452. 用最少数量的箭引爆
    860.柠檬水找零题目|文章思路这道题看上去很复杂,其实只要把每种情况写下来,答案就已经解决了。1.收到52.收到103.收到20实现点击查看代码classSolution{publi......
  • DFS(贪心问题)--解决最少数量装箱问题
    题目描述有重量分别为3,5,7公斤的三种货物,和一个载重量为X公斤的箱子(不考虑体积等其它因素,只计算重量)需要向箱子内装满X公斤的货物,要求使用的货物个数尽可能少(三种货物数量无......
  • 幸运的袋子 附加动图演示!
    幸运的袋子_牛客题霸_牛客网(nowcoder.com)厄运的袋子 用到了深度遍历 递归回溯法这里假设一个例子: 1112234578因为要确认是否辛运,并且保持这次不幸运,......