洋本羊 @ 2021-08-08 21:42:18
#include<cstdio>
#include<iostream>
using namespace std;
int n,s,a,b;
int x[5005],y[5005],dp[5005][5005];
int main()
{
cin>>n>>s>>a>>b;
for(int i=1;i<=n;i++)
{
cin>>x[i]>>y[i];
}
for(int i=1;i<=n;i++)
{
for (int j=0;j<=s;j++)
{
if(x[i]<=a+b&&j>=y[i])
{
dp[i][j]=max(dp[i-1][j-y[i]]+1,dp[i][j]);
}
else
{
dp[i][j]=dp[i-1][j];
}
}
}
cout<<dp[n][s];
return 0;
}
第三点是没有输出,估计第五点也是一个问题