Always keep a beginner's mind, don't forg|

fishcanfly

园龄:8年10个月粉丝:0关注:4

【875. 爱吃香蕉的珂珂】二分查找

复制代码
class Solution {
    public int minEatingSpeed(int[] piles, int h) {
        int ans = 0;
        int low = 1;
        int high = 1000000001;

        while(low<high){
            int mid = ( low +high)/2;
            if(check(piles,mid,h)){
                high = mid;
            }else{
                //太小;
                low = mid+1;
            }
        }
        return low;
    }

    /**
     *
     * 如果滿足,返回true,否則返回false
     *
     * @param piles
     * @param x
     * @param h
     * @return
     */
    public boolean check(int[] piles,int x,int h){
        int ans = 0;
        for(int pile:piles){
            ans += pile/x;
            if(pile%x != 0){
                ans+=1;
            }
        }
        return ans<=h;
    }
}
复制代码

 

本文作者:fishcanfly

本文链接:https://www.cnblogs.com/fishcanfly/p/16352955.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   fishcanfly  阅读(8)  评论(0编辑  收藏  举报
//雪花飘落效果
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起