SUZY @ 2017-08-23 09:39:14
#include<iostream>
#include<algorithm>
using namespace std;
struct node{
int x; //苹果高度
int y; //摘苹果的力气
};
int cmp(node aa,node bb)
{
return aa.y<bb.y; //按照摘苹果的力气从小到大排序;
}
node app[5001];
int n,s;
int a,b;
int tot;
int main()
{
int i;
cin>>n>>s;
cin>>a>>b;
for(i=0; i<n; i++)
cin>>app[i].x>>app[i].y;
sort(app,app+n,cmp);
tot = 0;
for(i=0; i<n; i++)
{
if(s-app[i].y<0) //s表示剩下的力气,尝试判断第i个苹果,
break; //如果力气不够,就结束循环
if(a+b>=app[i].x)//没结束循环,剩下的力气满足摘苹果
{
tot++; //统计摘到的个数;
s = s - app[i].y;//扣除花费的力气;
}
}
cout<<tot<<endl;
return 0;
}
by 1124828077ccj @ 2017-08-23 10:33:09
@SUZY 比如去交一发A+B,然后肯定是错的,但是代码就存下来了
by user48442 @ 2017-08-26 13:26:26
//话说回来既然已经贴上来了就已经不存在隐私权的问题了吧。
//仅个人想法x