#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using ull = unsigned long long;
#define int ll
#define uint ull
pair<int, int> prods[2000 + 5];
int n, k;
signed main() {
ios_base::sync_with_stdio(false);
cin.tie(nullptr); cout.tie(nullptr);
cin >> n >> k;
for (int i = 0; i < n; ++i) cin >> prods[i].second >> prods[i].first;
sort(prods, prods + n);
priority_queue<int> untake;
int ans = 0;
int time = 1;
int bought = 0;
for (int i = 0; i < n; ++i) {
auto [timing, cost] = prods[i];
if (timing < time) {
if (untake.empty()) continue;
int expensive = -untake.top();
if (cost >= expensive) continue;
else {
untake.pop();
time--;
bought--;
ans -= expensive;
}
}
time++;
bought++;
ans += cost;
untake.emplace(-cost);
}
cout << bought << ' ' << ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |