Submission #1151111

#TimeUsernameProblemLanguageResultExecution timeMemory
1151111vicvicGym Badges (NOI22_gymbadges)C++20
0 / 100
61 ms8264 KiB
#include <iostream> #include <fstream> #include <algorithm> #include <vector> #include <set> #include <stack> #include <cstdint> #define int long long using namespace std; const int NMAX=5e5; int n, cnt; set <int> setul; struct what { int x, l; } gym[NMAX+5]; int32_t main () { ios :: sync_with_stdio (0); cin.tie (nullptr); cin >> n; for (int i=1;i<=n;i++) { cin >> gym[i].x; } for (int i=1;i<=n;i++) { cin >> gym[i].l; } sort (gym+1, gym+n+1, [] (what a, what b) {return a.l<b.l;}); int s=0; for (int i=1;i<=n;i++) { if (s<=gym[i].l) { s+=gym[i].x; setul.insert (gym[i].x); } else { auto itr=setul.end(); --itr; int val=*itr; if (val>gym[i].x) { s-=val; s+=gym[i].x; setul.erase (val); setul.insert (gym[i].x); } } } cout << setul.size(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...