Cod sursa(job #3324877)

Utilizator brianabucur11Briana Bucur brianabucur11 Data 23 noiembrie 2025 20:57:11
Problema Lupul Urias si Rau Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <bits/stdc++.h>
#define 

using namespace std;

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

const int nmax = 1e5 + 5;

int n, x, l;

pair <int, int> v[nmax];

priority_queue <int> pq;

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 rez = 0;
    int i = 1;
    for (int dist = x / l * l; dist >= 0; dist -= l)
    {
        while (i <= n && v[i].first + dist <= x)
        {
            pq.push(v[i].second);
            i++;
        }
        if (!pq.empty())
        {
            rez += pq.top();
            pq.pop();
        }
    }
    fout << rez;
    return 0;
}