样例过了,自己随便带值也能对,结果五个WA,想哭

P1618 三连击(升级版)

沈先生 @ 2019-10-09 03:50:29

#include <bits/stdc++.h>
using namespace std;
int n,s,a,b,x[5005],y[5005],z[5005],sum=0,ans=0;
x是高度,y是费力,z用来判定是否被摘取
void dfs(int app)
{
    if(app==n+1)
    {
        ans=max(ans,sum);//不短取最大
        sum =0; //然后得到答案刷新sum的值
        return ;    
    }
    for(int i=1;i<=n+1;i++)
   {
    if(i==n+1)  dfs(n+1);//本应该巡环到n,到了n+1就代表没有可摘的苹果了 ,直接到结尾
    if(a+b>=x[i]&&s>=y[i]&&z[i]!=1)
    {
        s=s-y[i];
        z[i]=1;//标记摘过的
        sum++;
        dfs(app+1);
        z[i]=0;
        } 
    }
}
int main()
{
    cin>>n>>s>>a>>b;
    for(int i=1;i<=n;i++){
    cin>>x[i]>>y[i];}
    dfs(0);
    cout<<ans;
    return 0; 
}

求大佬帮忙看看错哪了,我自己试的都对了,结果五个wa....


by 木木! @ 2019-10-09 06:56:57

@沈先生 你可能是交错题了,你这个像P1478 陶陶摘苹果(升级版)的代码


by lk_liang @ 2019-10-09 07:26:39

哈哈哈哈交错题可还行


by 火车司机 @ 2019-10-09 07:27:04

每日快乐源泉有了2333


by 今天也要开心a @ 2019-10-09 07:33:30

哈哈哈哈哈哈哈哈哈嗝


by 啧啧啧 @ 2019-10-09 07:33:37

%%%


by 风行者 @ 2019-10-09 07:34:12

233


by _MRCMRC_ @ 2019-10-09 07:56:28

他交对题了,但是目测是发错题号了


by 沈先生 @ 2019-10-09 23:27:04

...woc..谢谢各位


by tZEROちゃん @ 2019-10-22 13:20:56

233333


|