#include<bits/stdc++.h>
using namespace std;
int main(){
int n,s,ans=0;
int x,y;
int a[10010],b[10010];
cin>>n>>s>>x>>y;
for(int i=1;i<=n;i++){
cin>>a[i]>>b[i];
}
for(int i=1;i<=n;i++){
for(int j=i;j<=n;j++){
if(a[i]<a[j]){
swap(a[i],a[j]);
swap(b[i],b[j]);
}
}
}
for(int i=1;i<=n;i++){
if(a[i]<=x+y&&s-b[i]>=0){
ans++;
s=s-b[i];
}
}
cout<<ans;
return 0;
}
我の贪心策略:把花费力气小的往前,如果身高不足就摘下一个。
但是不知道为什么WA了两个点