Cod sursa(job #3324645)

Utilizator Luca_georgescuLuca Georgescu Luca_georgescu Data 22 noiembrie 2025 19:34:49
Problema Lupul Urias si Rau Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <bits/stdc++.h>

using namespace std;

ifstream f("lupu.in");
ofstream g("lupu.out");

const int nmax=1e5+5;
int n,x,l;

vector <pair <int,int> > oi;

int main()
{
    f >> n >> x >> l;
    for (int i=1; i<=n; i++ )
    {
        int dist,lana; f >> dist >> lana;

        if ( dist>x ) continue;

        int deadline; deadline=(x-dist)/l;
        oi.push_back({deadline,lana});
    }

    sort(oi.begin(),oi.end());
    priority_queue <int, vector<int>, greater<int> > pq;

    for (auto oaie:oi )
    {
        int deadline=oaie.first;
        int lana=oaie.second;

        pq.push(lana);
        if ( pq.size()>deadline+1 )
            pq.pop();
    }

    int sum=0;
    while ( !pq.empty() )
    {
        sum+=pq.top();
        pq.pop();
    }

    g << sum;
    return 0;
}