Cod sursa(job #296433)

Utilizator infooainfo oa infooa Data 4 aprilie 2009 19:41:59
Problema Lupul Urias si Rau Scor 4
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include<iostream.h>
#include<stdio.h>
long long n,x,l,d[20000],a[20000],i,lana,ok=1,ord,aux,max,j;
int main()
{
	freopen("lupu.in","r",stdin);
	freopen("lupu.out","w",stdout);
	cin>>n>>x>>l;
	for(i=1;i<=n;i++)
		cin>>d[i]>>a[i];
	do
	{
		ord=1;
		for(i=1;i<n;i++)
			if(a[i]<a[i+1])
			{
				aux=a[i+1];
				a[i+1]=a[i];
				a[i]=aux;
				aux=d[i+1];
				d[i+1]=d[i];
				d[i]=aux;
				ord=0;
			}
	}while(ord==0);
	do
	{
		ok=1;
		for(i=1;i<=n;i++)
		{
			for(j=i;j<=n;j++)
			{
				max=0;
				if(d[j]==x)
					if(max<a[j]) 
					{
						max=a[j];
						a[j]=0;
						ok=0;
						break;
					}
			}
			lana=lana+max;
			if(ok==0) break;
			if(d[i]<x&&a[i]!=0) 
			{
				lana=lana+a[i];
				a[i]=0;
				ok=0;
				break;
			}
		}
		for(i=1;i<=n;i++)
			d[i]=d[i]+l;
	}while(ok==0);
	cout<<lana;
}