58分代码
P2949 [USACO09OPEN] Work Scheduling G
#include<bits/stdc++.h>
using namespace std;
#define int long long
struct Node
{
int price;
int id;
}p[100005];
bool cmp(Node x,Node y)
{
return x.id>y.id;
}
vector<int> a[100005];
priority_queue<int> q;
signed main()
{
int n;
cin>>n;
int ans=0;
for(int i=1;i<=n;i++)
{
cin>>p[i].id>>p[i].price;
a[p[i].id].push_back(p[i].price);
}
for(int i=10000;i>=1;i--)
{
for(int x:a[i]) q.push(x);
if(!q.empty())
{
ans+=q.top();
q.pop();
}
}
cout<<ans;
return 0;
}