#include <bits/stdc++.h>
#define ll long long
using namespace std;
multiset < pair < ll, ll > > x;
vector < pair < ll, ll > > v;
multiset < pair < ll, ll > > st;
ll n, m, s, ans;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
ll n, m, s;
cin >> n >> m >> s;
for (ll k=1; k<=n; k++) {
ll z, y;
cin >> z >> y;
v.push_back({z,y});
}
sort(v.begin(),v.end());
reverse(v.begin(),v.end());
for (ll k=0; k<m; k++)
ans+=v[k].first;
for (ll k=m; k<n; k++) {
st.insert({v[k].second,v[k].first});
}
while (st.size()>s) {
st.erase(st.begin());
}
set < pair < ll, ll > > ::iterator st_it;
for (st_it=st.begin(); st_it!=st.end(); st_it++)
ans+=(*st_it).first;
set < pair < ll, ll > > st1;
while (!st.empty()) {
st1.insert({-(*st.begin()).first,(*st.begin()).second});
st.erase(st.begin());
}
for (ll k=0; k<m; k++) {
set < pair <ll, ll > > ::iterator st_it;
for (st_it=st1.begin(); st_it!=st1.end(); st_it++) {
if (ans<ans-v[k].first+v[k].second+(*st_it).first+(*st_it).second) {
ans+=((*st_it).first+(*st_it).second);
ans-=(v[k].first-v[k].second);
st1.erase(st_it);
st1.insert({-v[k].second,v[k].first});
break;
}
}
}
cout << ans;
return 0;
}
Compilation message
school.cpp: In function 'int main()':
school.cpp:35:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
while (st.size()>s) {
~~~~~~~~~^~
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
2 ms |
376 KB |
Output isn't correct |
2 |
Correct |
2 ms |
508 KB |
Output is correct |
3 |
Correct |
3 ms |
576 KB |
Output is correct |
4 |
Incorrect |
2 ms |
576 KB |
Output isn't correct |
5 |
Incorrect |
2 ms |
596 KB |
Output isn't correct |
6 |
Incorrect |
2 ms |
596 KB |
Output isn't correct |
7 |
Incorrect |
8 ms |
728 KB |
Output isn't correct |
8 |
Incorrect |
6 ms |
728 KB |
Output isn't correct |
9 |
Incorrect |
16 ms |
788 KB |
Output isn't correct |
10 |
Incorrect |
7 ms |
788 KB |
Output isn't correct |
11 |
Incorrect |
21 ms |
836 KB |
Output isn't correct |
12 |
Incorrect |
10 ms |
972 KB |
Output isn't correct |
13 |
Incorrect |
630 ms |
1724 KB |
Output isn't correct |
14 |
Execution timed out |
2052 ms |
6068 KB |
Time limit exceeded |
15 |
Incorrect |
194 ms |
12976 KB |
Output isn't correct |
16 |
Execution timed out |
2068 ms |
13304 KB |
Time limit exceeded |
17 |
Execution timed out |
2033 ms |
13304 KB |
Time limit exceeded |
18 |
Execution timed out |
2056 ms |
13556 KB |
Time limit exceeded |
19 |
Execution timed out |
2023 ms |
15020 KB |
Time limit exceeded |
20 |
Execution timed out |
2092 ms |
18080 KB |
Time limit exceeded |