Submission #1176423

#TimeUsernameProblemLanguageResultExecution timeMemory
1176423DanerZeinGym Badges (NOI22_gymbadges)C++20
100 / 100
279 ms6492 KiB
#include <bits/stdc++.h> using namespace std; typedef pair<int,int> ii; typedef long long ll; int main(){ int n; cin>>n; vector<ii> gym(n); for(auto &v:gym) cin>>v.first; for(auto &v:gym) cin>>v.second; sort(gym.begin(),gym.end(),[&](ii a,ii b){ return a.first+a.second < b.first+b.second; }); priority_queue<int> pq; int badge=0; ll level=0; for(auto &v:gym){ if(level<=v.second){ badge++; level+=v.first; pq.push(v.first); } else{ if(pq.top()>v.first){ level-=pq.top(); level+=v.first; pq.pop(); pq.push(v.first); } } } cout<<badge<<endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...