# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
672127 | 2022-12-14T19:36:41 Z | infertechno2 | Schools (IZhO13_school) | C++14 | 107 ms | 11336 KB |
#include <bits/stdc++.h> using namespace std; typedef long long ll; const ll Size=3e5+10; pair<ll,ll> a[Size]; ll ansm[Size],anss[Size]; bool comp(const pair<ll,ll>& A,const pair<ll,ll>& B){ return (A.first-A.second)<(B.first-B.second); } void solve(){ ll n,m,s; cin>>n>>m>>s; for(ll i=1;i<=n;i++){ cin>>a[i].first>>a[i].second; } sort(a+1,a+n+1,comp); priority_queue<ll,vector<ll>,greater<ll>> to_remove; ll ans_for_s=0; for(ll i=1;i<=n;i++){ to_remove.push(a[i].second); ans_for_s+=a[i].second; if(to_remove.size()>s){ ans_for_s-=to_remove.top(); to_remove.pop(); } anss[i]=ans_for_s; } while(!to_remove.empty()){ to_remove.pop(); } ll ans_for_m=0; for(ll i=n;i>0;i--){ to_remove.push(a[i].first); ans_for_m+=a[i].first; if(to_remove.size()>m){ ans_for_m-=to_remove.top(); to_remove.pop(); } ansm[i]=ans_for_m; } long long ans=0; for(ll i=0;i<=n;i++){ ans=max(ans,anss[i]+ansm[i+1]); } cout<<ans<<endl; } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); ll t=1; while(t--){ solve(); } return 0; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 340 KB | Output is correct |
2 | Correct | 1 ms | 340 KB | Output is correct |
3 | Correct | 0 ms | 340 KB | Output is correct |
4 | Correct | 0 ms | 340 KB | Output is correct |
5 | Correct | 1 ms | 324 KB | Output is correct |
6 | Correct | 0 ms | 340 KB | Output is correct |
7 | Correct | 2 ms | 468 KB | Output is correct |
8 | Correct | 2 ms | 596 KB | Output is correct |
9 | Correct | 2 ms | 596 KB | Output is correct |
10 | Correct | 2 ms | 588 KB | Output is correct |
11 | Correct | 2 ms | 596 KB | Output is correct |
12 | Correct | 2 ms | 596 KB | Output is correct |
13 | Correct | 13 ms | 2196 KB | Output is correct |
14 | Correct | 29 ms | 3604 KB | Output is correct |
15 | Correct | 49 ms | 5996 KB | Output is correct |
16 | Correct | 75 ms | 7844 KB | Output is correct |
17 | Correct | 80 ms | 8776 KB | Output is correct |
18 | Correct | 86 ms | 9288 KB | Output is correct |
19 | Correct | 93 ms | 9912 KB | Output is correct |
20 | Correct | 107 ms | 11336 KB | Output is correct |