0
1
mirror of https://git.sb/baoshuo/OI-codes.git synced 2024-11-27 16:36:28 +00:00

1456. Supermarket

22873420
This commit is contained in:
Baoshuo Ren 2021-08-07 18:42:26 +08:00 committed by Baoshuo Ren
parent c7279f8669
commit fc73dada0b
Signed by: baoshuo
GPG Key ID: 70F90A673FB1AB68

40
POJ/1456/1456.cpp Normal file
View File

@ -0,0 +1,40 @@
#include <algorithm>
#include <iostream>
#include <queue>
using namespace std;
struct node {
int expire, value;
const bool operator<(const node& b) const {
return expire > b.expire;
}
} a[10005];
int main() {
int n;
while (cin >> n) {
int d = 1, ans = 0;
priority_queue<int> q;
for (int i = 0; i < n; i++) {
cin >> a[i].value >> a[i].expire;
}
sort(a, a + n);
a[n].value = a[n].expire = 0;
for (int i = 0; i < n;) {
int last = a[i].expire;
while (a[i].expire == last) {
q.push(a[i++].value);
}
int lim = last - a[i].expire;
while (q.size() && lim) {
ans += q.top();
q.pop();
lim--;
}
}
cout << ans << endl;
}
return 0;
}