[LeetCode 雙週賽25] 1. 擁有最多糖果的孩子(暴力、常規解法)

1. 題目來源

鏈接:5384. 擁有最多糖果的孩子

2. 題目說明

在這裏插入圖片描述
在這裏插入圖片描述

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;
    }
};
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章