Cod sursa(job #2301933)

Utilizator Groza_Iulia_DianaGroza Iulia Diana Groza_Iulia_Diana Data 13 decembrie 2018 17:45:16
Problema Lupul Urias si Rau Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <bits/stdc++.h>

using namespace std;

int n, x, l;
long long sol;
pair <int, int> a[100005];
priority_queue <int> c;

int main()
{
    freopen("lupu.in", "r", stdin);
    freopen("lupu.out", "w", stdout);
    scanf("%d%d%d", &n, &x, &l);
    for(int i=1; i<=n; i++)
        scanf("%d%d", &a[i].first, &a[i].second);
    sort(a+1, a+n+1);
    for(int d=0, i=1; d<=x; d+=l)
    {
        while(i<=n && a[i].first<=d)
            c.push(a[i++].second);
        if(!c.empty())
        {
            sol+=c.top();
            c.pop();
        }
    }
    printf("%lld", sol);
    return 0;
}