day22打卡

pwangikun / 2024-10-13 / 原文

  1. 分发饼干

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

376 摆动序列

class Solution {
public:
int wiggleMaxLength(vector& nums) {
int prediff = 0;
int curdiff = 0;
int ret = 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))
{
ret++;
prediff = curdiff;
}
}
return ret;
}
};

  1. 最大子数组和

class Solution {
public:
int maxSubArray(vector& nums) {
vector dp(nums.size(), INT_MIN);
dp[0] = nums[0];
int ret = 0;
int maxvalue = nums[0];
for(int i = 1; i < nums.size(); ++i)
{
dp[i] = max(dp[i-1] + nums[i], nums[i]);
if(dp[i] > maxvalue)
{
maxvalue = dp[i];
}
}
return maxvalue;
}
};