Cod sursa(job #782125)

Utilizator Athena99Anghel Anca Athena99 Data 25 august 2012 23:08:47
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include<cstdio>

int d[10001];

int main()
{
    int n=0,g=0,s=10000000,i=0,j=0,inf=10000000,e=0,p=0;
	freopen("energii.in","r",stdin);
	freopen("energii.out","w",stdout);
	scanf("%d%d",&n,&g);
	for (i=1; i<=10001; ++i)
        d[i]=inf;
	for(i=0; i<n; ++i)
    {
        scanf("%d%d",&e,&p);
        for(j=g-e; j>-1; --j)
			if(d[j+e]>d[j]+p)
			{
				d[j+e]=d[j]+p;
				if(d[j+e]<s)
					s=d[j+e];
			}
    }
    if (s!=10000000)
        printf("%d",s);
	else
        printf("-1");
	return 0;
}