- C++
第er
- @ 2026-4-26 19:53:59
#include<bits/stdc++.h>
using namespace std;
struct node{
long long t1,t2;
}a[150010];
bool cmp(node x,node y){
return x.t2<y.t2;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
long long n,cnt=0,sum=0;
cin>>n;
for(int i=1;i<=n;i++){
int x,y;
cin>>x>>y;
a[i].t1=x;
a[i].t2=y;
}
sort(a+1,a+n+1,cmp);
priority_queue<int> q;
for(int i=1;i<=n;i++){
cnt++;
sum+=a[i].t1;
q.push(a[i].t1);
if(sum>=a[i].t2){
sum-=q.top();
cnt--;
q.pop();
}
}
cout<<cnt;
return 0;
}
0 条评论
目前还没有评论...