【洛谷】P1478 陶陶摘苹果(升级版)-全AC题解

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

int main()
{
    int n,s,a,b;
    int countnum = 0;
    cin>>n>>s>>a>>b;
    int x[n],y[n],c[n];
    for(int i=0;i<n;i++)
    {
        cin>>x[i]>>y[i];
        c[i]=y[i];
    }

    sort(c,c+n);//排序

    for(int i=0;i<n;i++)
    {
        for(int j=0;j<n;j++)
        {

            if(y[j]==c[i] && a+b>=x[j] && s-y[j]>=0)
            {
                s = s-y[j];
                y[j]=c[n-1]+10; 
                //cout<<"j"<<j<<" "<<"y[j]:"<<y[j]<<" "<<"s"<<s<<endl;

                countnum++;

                break;
            }
        }

    }


    cout<<countnum<<endl;

    return 0;
}

注意:yi排序后的ci 从yi里找的时候 从前往后找 找到了继续 再来一遍的时候还是先找到之前的 后面的xi不一定满足 所以把找到了的yi排除

【洛谷】P1478 陶陶摘苹果(升级版)-全AC题解

上一篇:E4A写的app,点按钮,直接进入抖音指定用户界面


下一篇:实用篇:说说我在JavaScript项目中使用的工具类