Pagini recente » Cod sursa (job #2577686) | Cod sursa (job #2774343) | Cod sursa (job #2275061) | Borderou de evaluare (job #1337029) | Cod sursa (job #694081)
Cod sursa(job #694081)
#include<fstream>
using namespace std;
ifstream f("lupu.in");
ofstream g("lupu.out");
int n,l,x,i,q[100],maxi,s;
struct oaie { int d,c;
} v[100];
int fcomp(const void *x,const void *y)
{ oaie a=*(oaie *)x;
oaie b=*(oaie *)y;
if(b.d-a.d) return b.d-a.d;
return b.c-a.c;
}
int main()
{ f>>n>>x>>l;
for(i=1;i<=n;i++) f>>v[i].d>>v[i].c;
qsort(v+1,n,sizeof(oaie),fcomp);
for(i=1;i<=n;i++) q[i]=(x-v[i].d)/l+1;
maxi=v[1].c;
for(i=2;i<=n;i++) if(q[i]==q[i-1]&&v[i].c>maxi) maxi=v[i].c;
else if(q[i]!=q[i-1]) { s+=maxi;
maxi=v[i].c;
}
s+=maxi;
g<<s<<"\n";
f.close();
g.close();
return 0;
}