Cod sursa(job #2594609)
| Utilizator | Data | 6 aprilie 2020 13:52:39 | |
|---|---|---|---|
| Problema | Lupul Urias si Rau | Scor | 72 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.61 kb |
#include <fstream>
#include <queue>
using namespace std;
ifstream cin("lupu.in");
ofstream cout("lupu.out");
vector<int> timp[100005];
priority_queue<int> pq;
int main()
{
int n,x,l,maxx=0;
cin>>n>>x>>l;
for(int i=1;i<=n;++i)
{
int d,a;
cin>>d>>a;
timp[(x-d)/l+1].push_back(a);
maxx=max(maxx,(x-d)/l+1);
}
int lana=0;
for(int i=maxx;i>=1;--i)
{
for(int j=0;j<timp[i].size();++j)
pq.push(timp[i][j]);
if(pq.empty()) continue;
lana+=pq.top();
pq.pop();
}
cout<<lana;
return 0;
}
