Submission #844273

#TimeUsernameProblemLanguageResultExecution timeMemory
844273vjudge1Pod starim krovovima (COCI20_psk)C++17
50 / 50
1 ms348 KiB
#include <bits/stdc++.h> #define fast cin.tie(0)->sync_with_stdio(0); #define int long long #define inf ((int)1e18) #define N 1005 using namespace std; vector <pair<int, int> > glass(N); vector <int> ans(N); int32_t main(){ fast int n; cin>>n; int all = 0; for(int i = 0; i < n; i++) { int amount; glass[i].second = i; cin>>amount>>glass[i].first; all += amount; } sort(glass.begin(), glass.end()); reverse(glass.begin(), glass.end()); int fans; for(int i = 0; i < n; i++) { if(all <= 0) {fans = 0; break; }; ans[glass[i].second] = min(glass[i].first, all); all -= glass[i].first; if(all <= 0) { fans = n - i - 1; break; } } cout<<fans<<"\n"; for(int i = 0; i < n; i++) { cout<<ans[i]<<" "; } }
#Verdict Execution timeMemoryGrader output
Fetching results...