Cod sursa(job #221026)

Utilizator AthanaricCirith Gorgor Athanaric Data 14 noiembrie 2008 09:31:29
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <stdio.h>
#define N 1005
#define SMAX 10005
int v[N],val[N],a[SMAX],s,n;
void citirith()
{
	scanf("%d%d",&n,&s);
	for (int i=1; i<=n; i++)
		scanf("%d%d",&v[i],&val[i]);
}
void rezolvarith()
{
	int i,j;
	for (i=1; i<=n; i++)  
        for (j=s-1; j>=1; --j)  
        {  
            if (a[j])  
                if (a[j]+val[i]>a[j+v[i]])  
                    a[j+v[i]]=1;  
            if (v[i]>a[v[i]])  
		            a[v[i]]=val[i];  
        }
	for (i=s; a[i]==0; i++);
	printf("%d ",a[i]);
}
int main()
{
	freopen("energii.in","r",stdin);
	freopen("energii.out","w",stdout);
	citirith();
	rezolvarith();

}