455. 分发饼干 - 力扣(LeetCode)
#include<iostream>
#include<bits/stdc++.h>
using namespace std;
const int N=10010;
int g[N],s[N];
int main()
{
int n,m;//胃、饼干
cin>>n>>m;
for(int i=1;i<=n;i++)cin>>g[i];
for(int j=1;j<=m;j++)cin>>s[j];
int res=0;//满足数
//1 3 4 11 //胃口g
//1 3 7 10 //饼干s
int index=m;
for(int i=n;i>=1;i--)
{
if(index>=0 && s[index]>=g[i])
{
index--;
res++;
}
}
cout<<res;
return 0;
}
376. 摆动序列 - 力扣(LeetCode)
class Solution
{
public:
int wiggleMaxLength(vector<int>& nums)
{
if(nums.size()==1)return 1;
else
{
int prediff=0,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;
}
}
};
53. 最大子数组和 - 力扣(LeetCode)
class Solution
{
public:
int maxSubArray(vector<int>& nums)
{
int sum=0;
int result=nums[0];
for(int i=0;i<nums.size();i++)
{
sum+=nums[i];
if(sum>result)result=sum;
if(sum<0)sum=0;
}
return result;
}
};
122. 买卖股票的最佳时机 II - 力扣(LeetCode)
class Solution
{
public:
int maxProfit(vector<int>& prices)
{
int sum=0;
for(int i=1;i<prices.size();i++)
{
if((prices[i]-prices[i-1])>0)
sum+=prices[i]-prices[i-1];
}
return sum;
}
};
class Solution
{
public:
int maxProfit(vector<int>& prices)
{
int sum=0;
for(int i=1;i<prices.size();i++)sum+=max(prices[i]-prices[i-1],0);
return sum;
}
};
55. 跳跃游戏 - 力扣(LeetCode)
class Solution
{
public:
bool canJump(vector<int>& nums)
{
int cover=0;
if(nums.size()==1)return true;
for (int i = 0; i <= cover; i++)
{
cover=max(nums[i]+i,cover);
if(cover>=nums.size()-1)return true;
}
return false;
}
};
45. 跳跃游戏 II - 力扣(LeetCode)
class Solution
{
public:
int jump(vector<int>& nums)
{
if(nums.size()==1)return 0;
int result=0,cover=0,next=0;
for(int i=0;i<nums.size();i++)
{
next=max(next,nums[i]+i);
if(i==cover)
{
if(cover!=nums.size()-1)
{
result++;
cover=next;
if(cover==nums.size()-1)
break;
}
}
}
return result;
}
};
1005. K 次取反后最大化的数组和 - 力扣(LeetCode)
134. 加油站 - 力扣(LeetCode)
135. 分发糖果 - 力扣(LeetCode)
860. 柠檬水找零 - 力扣(LeetCode)
406. 根据身高重建队列 - 力扣(LeetCode)