P1478陶陶摘苹果
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
struct node{
int x;
int y;
}z[5001];
int cmp(node a,node b){
return a.y<b.y;
}
int main(){
int n,s,a,b,sum=0,ans=0;
cin>>n>>s>>a>>b;
for(int i=1;i<=n;i++)
{
cin>>z[i].x>>z[i].y;
}
sort(z+1,z+n+1,cmp);
for(int i=1;i<=n;i++)
{
if((a+b)<=z[i].x)
{
sum++;
ans+=z[i].y;
if((s-ans)<z[i+1].y) break;
}
}
cout<<sum<<endl;
return 0;
}