求大佬帮忙看看

P1478 陶陶摘苹果(升级版)

Cunkou @ 2019-11-14 11:50:09

求助大佬!!! 什么情况啊?只过了一个点? 求救。。。

#include<iostream>
#include<cstring>
using namespace std;
int n,a,s,b;
const int maxn = 5005;
int dp[maxn][maxn];
int x[maxn],y[maxn];

int solve(int nows,int pos) {
    if (dp[nows][pos]!=-1) return dp[nows][pos];
    if (pos>=n) return 0;
    else{
        int temp1,temp2;
        if (a+b>=x[pos] && nows>=y[pos]) temp1 = solve(nows-y[pos],pos+1)+1;
        temp2 = solve(nows,pos+1);
        return dp[nows][pos] = max(temp1,temp2);
    }
}

int main() {
    memset(dp,-1,sizeof(dp));
    cin>>n>>s;
    cin>>a>>b;
    for (int i=1;i<=n;i++) cin>>x[i]>>y[i];
    cout<<solve(s,1)<<endl;
    return 0;
} 

by Cunkou @ 2019-11-14 11:58:35

@Cunkou 没给temp1初始化,初始化了-1后又过了两个,就剩下两个了。。。


|