用动态规划做的,3,5WA
不知道咋调了
求助
#include<bits/stdc++.h>
using namespace std;
int n,s;
int a,b;
int x[5005],y[5005];
int f[5005][1005];
int max(int q,int p)
{
if(q>p)return q;
else return p;
}
int main()
{
cin>>n>>s;
cin>>a>>b;
for(int i=1;i<=n;i++)
cin>>x[i]>>y[i];
int app=0;//能摘到的苹果数
bool ap[5005]={0};//记录能摘到的苹果
for(int i=1;i<=n;i++)
{
if(x[i]<=a+b)
{
app++;
ap[i]=1;
}
}
for(int i=1;i<=n;i++)
for(int v=s;v>0;v--)
{
if(ap[i]==0)break;
if(y[i]<=v)f[i][v]=max(f[i-1][v],f[i-1][v-y[i]]+1);
else f[i][v]=f[i-1][v];
}
cout<<f[n][s];
return 0;
}