目录
[455. 分发饼干](#455. 分发饼干)
[376. 摆动序列](#376. 摆动序列)
[53. 最大子数组和](#53. 最大子数组和)
455. 分发饼干
cpp
class Solution {
public:
int findContentChildren(vector<int>& g, vector<int>& s) {
int ans=0;
sort(g.begin(),g.end());
sort(s.begin(),s.end());
int p=s.size()-1;
int k=g.size()-1;
while(p>=0&&k>=0){
if(g[k]<=s[p]){
k--;
p--;
ans++;
}
else k--;
}
return ans;
}
};
376. 摆动序列
这道题解释得很勉强,感觉不太适合用贪心做
cpp
class Solution {
public:
int wiggleMaxLength(vector<int>& nums) {
if(nums.size()==1)return 1;
int ans=1;
int prediff=0;
int curdiff=0;
for(int i=0;i<nums.size()-1;i++){
curdiff=nums[i+1]-nums[i];
if(prediff>=0&&curdiff<0||prediff<=0&&curdiff>0){
ans++;
prediff=curdiff;
}
}
return ans;
}
};
53. 最大子数组和
cpp
class Solution {
public:
int maxSubArray(vector<int>& nums) {
int ans=INT_MIN;
int sum=0;
for(int t:nums){
sum+=t;
ans=max(ans,sum);
if(sum<0)sum=0;
}
return ans;
}
};
