Cod sursa(job #296140)

Utilizator GheorgheMihaiMihai Gheorghe GheorgheMihai Data 4 aprilie 2009 12:24:50
Problema Energii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include<stdio.h>
int n,g;
int v[16000]; 

void read()
{
	freopen("energii.in","r",stdin);
	freopen("energii.out","w",stdout);
	int i,e,c;
	for(i=1;i<=16000;i++)
		v[i]=1000000000;
	v[0]=1;
	scanf("%d%d",&n,&g);
	for(;n;n--)
	{
		scanf("%d%d",&e,&c);
		for(i=g-1;i>=0;i--)
			if(i+e<=g)
			{
				if(v[i+e]>v[i]+c)
					v[i+e]=v[i]+c;
			}
			else
				if(v[g]>v[i]+c)
					v[g]=v[i]+c;
	}
	if(v[g]==1000000000)
		printf("-1\n");
	else
		printf("%d",v[g]-1);
}

int main()
{
	read();

	return 0;
}