Cod sursa(job #1090444)

Utilizator DanInfoelSlusariuc Dan Dragos Nicolae DanInfoel Data 22 ianuarie 2014 18:24:39
Problema Lupul Urias si Rau Scor 12
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("lupu.in");
ofstream fout("lupu.out");
int main()
{
long long N,L,X,S=0;
f>>N>>X>>L;
int i;
struct oaie{ int D,L;}a[100005];
for(i=1;i<=N;i++)
    f>>a[i].D>>a[i].L;
int minim=a[1].D,maxim=0;
for(i=2;i<=N;i++)
 if(minim>a[i].D)
minim=a[i].D;
while(minim<=X)
{ for(i=1;i<=N;i++)
    if((a[i].D>=X-L+1)&&(a[i].D<=X))
        if(maxim<a[i].L)
        { maxim=a[i].L;
        a[i].D=a[N].D;
        a[i].L=a[N].L;
        N--;}
S=S+maxim;
minim=minim+L;
for(i=1;i<=N;i++)
a[i].D=a[i].D+2;
maxim=0;
}
fout<<S;
return 0;
}