Leetcode算法题2201-2300


2221-2230

2226. 每个小孩最多能分到多少糖果

class Solution {
public:
#define ll long long

    bool check(const vector<int> &nums, int x, ll k) {
        ll sum = 0;
        for (auto it: nums)sum += it / x;
        return sum >= k ? true : false;
    }

    int maximumCandies(vector<int> &candies, long long k) {
        int l = 0, r = *max_element(candies.begin(), candies.end()), mid = 0;
        while (l < r) {
            mid = l + r + 1 >> 1;
            if (check(candies, mid, k)) l = mid;
            else r = mid - 1;
        }
        return l;
    }
};

文章作者: 不二
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 不二 !
  目录