Cod sursa(job #1794781)

Utilizator CiurezAndreiCiurez Marius-Andrei CiurezAndrei Data 1 noiembrie 2016 18:43:03
Problema Lupul Urias si Rau Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("lupu.in");
ofstream fout("lupu.out");

int N, X, L;
long long solution;
pair<int, int>v[100010];

priority_queue<int> H;

int main()
{
    fin >> N >> X >> L;

    for(int i = 1; i <= N; i ++)
    {
        fin >> v[i].first >> v[i].second;
    }

    sort(v + 1, v + N + 1);

    int k = 1;

    for(int D = 0; D <= X; D += L)
    {
        while(v[k].first <= D && k <= N)
        {
            H.push(v[k ++].second);
        }
        if(H.size())
        {
            solution += H.top();
            H.pop();
        }
    }

    fout << solution;

    return 0;
}