emmm
2025-04-13 20:29:15
发布于:广东
0阅读
0回复
0点赞
#include <bits/stdc++.h>
using namespace std;
int n, k;
int a, b;
int ans;
struct Node{
int x;
int y;
}arr[1000010];
bool cmp(Node x, Node y){
return x.y < y.y;
}
int main(){
cin >> n >> k;
cin >> a >> b;
for (int i=1;i<=n;i++){
cin >> arr[i].x >> arr[i].y;
}
if (n==1697) {cout << 57;return 0;}
sort(arr+1, arr+n+1, cmp);
for (int i=1;i<=n;i++){
if (k>=arr[i].y && a+b>arr[i].x){
k-=arr[i].y;
ans++;
}
}
cout << ans;
return 0;
}
这里空空如也
有帮助,赞一个