Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- typedef long long ll;
- int main() {
- int N, K; cin >> N >> K;
- vector<pair<int,int> > v(N);
- for (int i = 0; i < N; ++i) {
- cin >> v[i].second >> v[i].first;
- }
- sort(v.begin(), v.end(), greater<pair<int,int> >());
- ll sum = 0;
- ll res = 0;
- multiset<int> s;
- for (int i = 0; i < N; ++i) {
- int b =t> s;
- for (int i = 0; i < N; ++i) {
- int b = v[i].first;
- if (i < K) {
- sum += v[i].second;
- s.insert(v[i].second);
- }
- else {
- if (v[i].second > *s.begin()) {
- sum -= *s.begin();
- sum += v[i].second;
- s.erase(s.begin());
- s.insert(v[i].second);
- }
- }
- res = max(res, sum*b);
- }
- cout << res;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement