Cod sursa(job #580552)

Utilizator andrei.finaruFinaru Andrei Emanuel andrei.finaru Data 13 aprilie 2011 10:46:00
Problema Lupul Urias si Rau Scor 48
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include<fstream.h>
#include<algorithm>
ifstream f("lupu.in");
ofstream g("lupu.out");
struct miel { int t,a;} oaie[100005];
int n,x,l,d,viz[100005];
long long rez;
int cmp(miel a, miel b)
{ return(a.a>b.a); }

int main()
{
	int i,j;
	f>>n>>x>>l;
	for(i=1;i<=n;++i) 
		{ f>>d>>oaie[i].a;
		  oaie[i].t=(x-d)/l;
		}
	std::sort(oaie+1,oaie+n+1,cmp);
	for(i=1;i<=n;++i)
		{ j=n;
		  while(j>-1&&(viz[j]||j>oaie[i].t)) --j;
		  if(j==-1) continue;
		  viz[j]=1;
		  rez+=oaie[i].a;
		}
	g<<rez<<'\n';
	f.close(); g.close();
	return 0;
}