40分求助
查看原帖
40分求助
1040198
lintylong楼主2023/10/6 20:12
#include <bits/stdc++.h>
using namespace std;
int n,s,a,b;
int x[10010],y[10010];
int dfs(int num,int rest)
{
    if(num>n)
    {
        return 0;
    }
    int Max=dfs(num+1,rest);
    if(x[num]<a+b&&rest>=y[num])
    {
        int t=dfs(num+1,rest-y[num])+1;
        Max=t>Max?t:Max;
    }
    return Max;
}
int main()
{
    cin>>n>>s>>a>>b;
    for(int i=1;i<=n;i++)
    {
        cin>>x[i]>>y[i];
    }
    cout<<dfs(1,s);
    return 0;
}

WA第2个测试点,TLE第3、4个测试点。

2023/10/6 20:12
加载中...