Leetcode 455. Assign Cookies

原題地址:https://leetcode.com/problems/assign-cookies/description/

題目描述

Assume you are an awesome parent and want to give your children some cookies. But, you should give each child at most one cookie. Each child i has a greed factor gi, which is the minimum size of a cookie that the child will be content with; and each cookie j has a size sj. If sj >= gi, we can assign the cookie j to the child i, and the child i will be content. Your goal is to maximize the number of your content children and output the maximum number.

給小孩分餅干,每個(gè)餅干能帶來(lái)的滿(mǎn)足感有高低,小孩的欲望值也有高低,用所給的餅干盡可能多地滿(mǎn)足小孩的欲望。

我的思路

給小孩的欲望和餅干的屬性值升序排序,然后掃一遍,所以應(yīng)該就是排序算法的復(fù)雜度了。

代碼一

class Solution {
public:
    int findContentChildren(vector<int>& g, vector<int>& s) {
        if(g.size()==0 || s.size()==0){
            return 0;
        }
        int count = 0;
        sort(g.begin(),g.end());
        sort(s.begin(),s.end());
        int j=0;
        for (int i = 0;i<g.size() && j<s.size();i++){
            for(;j<s.size();){
                if(g[i] <= s[j++]){
                    count++;
                    break;
                }
            }
        }
        return count;
    }
};

代碼二

class Solution {
public:
    int findContentChildren(vector<int>& g, vector<int>& s) {
        sort(g.begin(), g.end());
        sort(s.begin(), s.end());
        int res = 0;
        int j = 0;
        for(int i = 0; i < s.size(); ++i){
            if(s[i] >= g[j]){
                res++;
                j++;
                if(j >= g.size()){
                    break;
                }
            }
        }
        return res;
    }
};
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容