Cod sursa(job #3163287)

Utilizator laura2020Moldovan Laura laura2020 Data 31 octombrie 2023 10:45:59
Problema Lupul Urias si Rau Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <iostream>
#include <fstream>
#include <queue>
#include <vector>

using namespace std;

ifstream fin("lupu.in");
ofstream fout("lupu.out");
#define ll long long
vector<vector<ll>> v;
priority_queue<ll> pq;

int main()
{
    ll n,x,l,i,j,a,b,maxi=0,s=0;
    fin>>n>>x>>l;
    for(i=0;i<n;i++)
    {
        fin>>a>>b;
        if(a<=x)
        {
            a=(x-a)/l+1;
            maxi=max(maxi,a);
            v.resize(maxi+1);
            v[a].push_back(b);
        }
    }
    for(i=maxi;i>=1;i--)
    {
        for(j=0;j<v[i].size();j++)
            pq.push(v[i][j]);
        if(pq.size())
        {
            s+=pq.top();
            pq.pop();
        }
    }
    fout<<s;
    return 0;
}