LeetCode 1431.拥有最多糖果的孩子

给你一个数组 candies 和一个整数 extraCandies ,其中 candies[i] 代表第 i 个孩子拥有的糖果数目。

对每一个孩子,检查是否存在一种方案,将额外的 extraCandies 个糖果分配给孩子们之后,此孩子有最多的糖果。注意,允许有多个孩子同时拥有最多的糖果数目。

只需遍历找出拥有最多糖果的孩子有多少糖果,然后每个孩子都判断一次获取全部的extraCandies后是否能超过拥有最多糖果的孩子的糖果数即可:

    vector<bool> kidsWithCandies(vector<int>& candies, int extraCandies) {
        vector<bool> res;
        int max = 0;
        for (int i = 0; i < candies.size(); ++i) {
            if (candies[i] > max) {
                max = candies[i];
            }
        }

        for (int each : candies) {
            res.push_back(each + extraCandies >= max);
        }
        return res;
    }
posted @ 2020-06-01 15:21  epiphanyy  阅读(17)  评论(0)    收藏  举报  来源