Cod sursa(job #2905619)

Utilizator antonio_sefu_tauLaslau Antonio antonio_sefu_tau Data 22 mai 2022 17:27:55
Problema Lupul Urias si Rau Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <fstream>
#include <algorithm>
#include <queue>
using namespace std;
const int dim=1e5+5;
int n,x,l;
long long sol;
struct oaie{
    int timp,lana;
}oi[dim];
bool cmp(oaie x,oaie y){
    return x.timp<y.timp;
}
priority_queue<int>Q;
int main(){
    ifstream f("lupu.in");
    ofstream g("lupu.out");
    f>>n>>x>>l;
    for(int i=1;i<=n;i++){
        int d;
        f>>d>>oi[i].lana;
        oi[i].timp=(x-d)/l;
    }
    sort(oi+1,oi+n+1,cmp);
    int t=oi[n].timp,p=n;
    while(t>=0){
        while(p and oi[p].timp>=t)
            Q.push(oi[p--].lana);
        if(!Q.empty())
            sol+=Q.top(),Q.pop();
        t--;
    }
    g<<sol;
    return 0;
}