Cod sursa(job #1904391)

Utilizator Mihai9Oniga Mihai Mihai9 Data 5 martie 2017 15:19:16
Problema Lupul Urias si Rau Scor 100
Compilator cpp Status done
Runda Teme Pregatire ACM Unibuc 2014, Anul II Marime 0.43 kb
#include<fstream>
#include<queue>
#include<algorithm>
using namespace std;
ifstream f("lupu.in");
ofstream g("lupu.out");
priority_queue<int> ST;
pair <int,int> a[100010];
int n,x,k,d,i;
long long sol;
int main(){
 f>>n>>x>>k;
 for(i=1;i<=n;++i)f>>a[i].first>>a[i].second;
 sort(a+1,a+n+1);
 for(d=0,i=1;d<=x;d+=k){
  while(i<=n&&a[i].first<=d)ST.push(a[i++].second);
  if(!ST.empty()){sol+=ST.top();ST.pop();}
 }g<<sol;
}