Cod sursa(job #781092)

Utilizator ephgstefana gal ephg Data 23 august 2012 11:36:11
Problema Lupul Urias si Rau Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <cstdio>
#include <queue>
#include <algorithm>
using namespace std;
#define BM 100005
pair <int,int> oi[BM];
priority_queue<int,vector<int>,less<int> >heap;
int main () {
    int n,x,l,i,dc,v;
    long long s=0;
    freopen("lupu.in","r",stdin);
    freopen("lupu.out","w",stdout);
    scanf("%d %d %d",&n,&x,&l);
    for(i=1;i<=n;++i)scanf("%d %d",&oi[i].first,&oi[i].second);
    sort(oi+1,oi+n+1);
    dc=0;
    i=1;
    for(;dc<=x;dc+=l){
        for(;oi[i].first<=dc&&i<=n;++i){
            heap.push(oi[i].second);
        }
        if(heap.size()){
            s+=(long long)heap.top();
            //printf("%lld\n",s);
            heap.pop();
        }
    }
    printf("%lld",s);
    return 0;
}