455.分发饼干
class Solution {
public:
int findContentChildren(vector<int>& g, vector<int>& s) {
int j=0;
sort(s.begin(),s.end());
sort(g.begin(),g.end());
for(int i=0;i<s.size();i++){
if(j<g.size() && s[i]>=g[j]){
j++;
}
}
return j;
}
};
376.摆动子序列
class Solution {
public:
int wiggleMaxLength(vector<int>& nums) {
if (nums.size() <= 1) return nums.size();
int preDiff=0;
int curDiff=0;
int result=1;
for(int i=0;i<nums.size()-1;i++){
curDiff=nums[i+1]-nums[i];
if((preDiff>=0 && curDiff<0) || (preDiff<=0 && curDiff>0)){
result++;
preDiff=curDiff;
}
}
return result;
}
};
注意三种特殊情况,而且pre=cur的更新是放在if里的
53.最大子序列
class Solution {
public:
int maxSubArray(vector<int>& nums) {
int result=INT32_MIN;
int count=0;
for(int i=0;i<nums.size();i++){
count+=nums[i];
if(count>result) result=count;
if(count<0) count=0;
}
return result;
}
};