Cod sursa(job #1488211)

Utilizator enedumitruene dumitru enedumitru Data 18 septembrie 2015 10:02:52
Problema Lupul Urias si Rau Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include<fstream>
#include<queue>
#include<algorithm>
using namespace std;
ifstream f("lupu.in"); ofstream g("lupu.out");
priority_queue<int> h;
pair <int,int> a[100010];
int n,x,k;
int main()
{   f>>n>>x>>k;
    for(int i=1;i<=n;i++) f>>a[i].first>>a[i].second;
    sort(a+1,a+n+1);
    long long sol=0;
    for(int d=0,i=1;d<=x;d+=k)
    {   while(i<=n && a[i].first<=d) h.push(a[i++].second);
        if(!h.empty()) {sol+=h.top(); h.pop();}
    }
    g<<sol<<'\n'; g.close(); return 0;
}