455-Assign Cookies

类别:greedy
难度:easy

题目描述

这里写图片描述

算法描述

(1)对孩子们的最低要求进行排序,对所有的饼干进行排序
(2)将能够满足孩子要求的最小的饼干给相应的孩子,直到遍历完两个数组。

代码实现

class Solution {
public:
    int findContentChildren(vector<int>& g, vector<int>& s) {
        int n = g.size();
        int m = s.size();
        int ans = 0;
        sort(g.begin(), g.end());
        sort(s.begin(), s.end());
        int i = 0, j = 0;
        // 注意这里是(i < n && j < m) 如果是(i < n, j < m)的话,结果出错。
        for (i = 0, j = 0; i < n && j < m; ++j) {
            if (g[i] <= s[j]) {
                ans++;
                i++;
            }
        }
        return ans;
    }
};

这道题目没有什么难度,但是需要注意一个地方,就是for循环中的条件判断,在dev c++中运行的时候,使用i < n, j < m不会出错,但是在leetcode上面过不了,改为(i < n && j < m)后是Accepted

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章