题目来源:https://leetcode.cn/problems/assign-cookies/description/
C++题解1:将大饼干优先大胃口的孩子。
class Solution {
public:
int findContentChildren(vector<int>& g, vector<int>& s) {
sort(g.begin(), g.end());
sort(s.begin(), s.end());
int res = 0;
for(int i = g.size()-1; i >= 0; i--) {
if(s.size() == 0) break;
if(g[i] <= s[s.size()-1]) {
s.pop_back();
res++;
}
}
return res;
}
};
C++题解2(来源代码随想录):将小饼干优先小胃口的孩子。
class Solution {
public:
int findContentChildren(vector<int>& g, vector<int>& s) {
sort(g.begin(),g.end());
sort(s.begin(),s.end());
int index = 0;
for(int i = 0; i < s.size(); i++) { // 饼干
if(index < g.size() && g[index] <= s[i]){ // 胃口
index++;
}
}
return index;
}
};
贪心算法第一题,好像没有规律可言。