Cod sursa(job #2286677)

Utilizator ScarymovieMocanu Alexandru Scarymovie Data 20 noiembrie 2018 17:16:21
Problema Lupul Urias si Rau Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <fstream>
#include<queue>
#include<algorithm>
using namespace std;
struct oi
{
    int d,p;
};
int n,x,l;
oi v[100000];
priority_queue<int> m_oi;
ifstream f("lupu.in");
ofstream g("lupu.out");
bool cmp(oi a,oi b)
{
    return a.d<b.d;
}
int main()
{
    f>>n>>x>>l;
    for(int i=0;i<n;++i) f>>v[i].d>>v[i].p;
    sort(v,v+n,cmp);
    long long i=0,pr=0;
    for(int dist=x%l;dist<=x;dist+=l)
    {
        while(v[i].d<=dist && i<n) m_oi.push(v[i++].p);
        if(m_oi.empty()) continue;
        pr+=m_oi.top();
        m_oi.pop();
    }
    g<<pr<<'\n';
    return 0;
}