P1478 陶陶摘苹果(升级版)

P1478 陶陶摘苹果(升级版)

题目链接:https://www.luogu.org/problem/P1478

思路:

​ 这题要比想象的要简单,因为在相同气力下,陶陶无论是摘高的还是低的都不影响,所以这题只需要把气力从小到大排就好了。

代码:

#include <bits/stdc++.h>
using namespace std;

int main()
{
    //freopen("in.txt","r",stdin);
    //freopen("out.txt","w",stdout);
    int n,s,a,b,i,j;
    int a1[5050],a2[5050],sum=0,m=0;
    cin>>n>>s;
    cin>>a>>b;
    for(i=0;i<n;i++){
        cin>>a1[i]>>a2[i];
        if(a1[i]>a+b){    //排除掉够不着的苹果;
            i--;
            n--;      //一定要注意减1!!!
        }
    }
    sort(a2,a2+n);    //把气力从小到大排序;
    for(j=0;j<n;j++){
        if(sum+a2[j]<=s){
            sum += a2[j];
            m++;
        }
        //cout<<a2[j]<<endl;
    }
    cout<<m<<endl;
    return 0;
}
posted @ 2019-07-27 16:18  幽灵小一只  阅读(134)  评论(0编辑  收藏  举报