[LeetCode 双周赛25] 1. 拥有最多糖果的孩子(暴力、常规解法)

文章目录

    • 1. 题目来源
    • 2. 题目说明
    • 3. 题目解析
      • 方法一:暴力+常规解法

1. 题目来源

链接:5384. 拥有最多糖果的孩子

2. 题目说明

[LeetCode 双周赛25] 1. 拥有最多糖果的孩子(暴力、常规解法)_第1张图片
在这里插入图片描述

3. 题目解析

方法一:暴力+常规解法

签到题,题目解释辣么长…没啥营养,首先遍历数组求出最大糖果的数目,然后再遍历数组看看拿到全部额外糖果时是否能大于等于最大糖果数即可。没啥好说的。

参见代码如下:

// 执行用时 :8 ms, 在所有 C++ 提交中击败了100.00%的用户
// 内存消耗 :9 MB, 在所有 C++ 提交中击败了100.00%的用户

class Solution {
public:
    vector<bool> kidsWithCandies(vector<int>& candies, int extraCandies) {
        vector<bool> vt;
        int mx = -1;
        for (auto e : candies) mx = max(mx, e);

        for (auto e : candies) {
            if (e + extraCandies >= mx) vt.push_back(true); 
            else vt.push_back(false);
        }
        return vt;
    }
};

// 执行用时 :0 ms, 在所有 C++ 提交中击败了100.00%的用户
// 内存消耗 :9.2 MB, 在所有 C++ 提交中击败了100.00%的用户
class Solution {
public:
    vector<bool> kidsWithCandies(vector<int>& candies, int extraCandies) {
        vector<bool> vt;
        int mx = *max_element(candies.begin(), candies.end());
        for (auto e : candies) {
            if (e + extraCandies >= mx) vt.push_back(true); 
            else vt.push_back(false);
        }
        return vt;
    }
};

你可能感兴趣的:(LeetCode周赛)