第四个点RE???

P1478 陶陶摘苹果(升级版)

hyzaoia @ 2017-09-07 18:12:49

基本思想就是判断每个苹果能不能摘到,并把能摘到的按照耗费的体力排序。最后遍历能摘到的苹果

#include<cstdio>
#include<algorithm>
using namespace std;

struct appl{
    int hgt,v;
}app[10005],nwapp[10005];

bool cmp(appl a,appl b){
    return a.v<b.v;
};

int main(){
    int n,s;
    scanf("%d%d",&n,&s);
    int a,b;
    scanf("%d%d",&a,&b);
    int h=a+b;
    int t=0;
    for(int i=1;i<=n;i++){
        scanf("%d%d",&app[i].hgt,&app[i].v);
        if(app[i].hgt>h);
        else{
            nwapp[++t].hgt=app[i].hgt;
            nwapp[t].v=app[i].v;
        }
    }
    sort(nwapp+1,nwapp+t+1,cmp);
    int ans=0;
    for(int i=1;;i++){
        if(nwapp[i].v<=s){
            ans++;
            s-=nwapp[i].v;
        }
        else break;
    }
    printf("%d",ans);
    return 0;
}

然后第四个点就RE了……


|