Cod sursa(job #502274)

Utilizator zloteanu.adrianzloteanu adrian nichita zloteanu.adrian Data 18 noiembrie 2010 18:17:30
Problema Lupul Urias si Rau Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include<fstream>
#include<queue>
#include<algorithm>
using namespace std;
struct casa{int d,c;} a[1005];
long long sol;
int n,x,l,dist,i;
priority_queue <int> h;
inline bool cmp (const casa &a,const casa &b)
{if(a.d<b.d)
 return 1;
return 0;}
int main ()
{ifstream q("lupu.in");
ofstream w("lupu.out");
q>>n>>x>>l;
for(i=1;i<=n;i++)
  q>>a[i].d>>a[i].c;
sort(a+1,a+n+1,cmp);
for(dist=0,i=1;dist<=x&&i<=n;dist+=l)
  {for(;i<=n&&a[i].d<=dist;i++)
	 h.push(a[i].c);
  if(h.size())
   {sol+=h.top();
	h.pop();}}
w<<sol<<"\n";
return 0;}