Cod sursa(job #480621)

Utilizator unknownliviuMaria Liviu Valentin unknownliviu Data 28 august 2010 21:27:48
Problema Energii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include<fstream>
using namespace std;
ifstream in("energii.in");
ofstream out("energii.out");
const int mult=1<<27;
const int Q=15001;
int main()
{
	int i,j,w,n,m;
	int e[1010],c[1010],f[Q+10];
	in>>n>>w;
	for(i=1;i<=n;i++)
		in>>e[i]>>c[i];
	for(i=1;i<Q;i++)
		f[i]=mult;
	for(i=1;i<=n;i++)
		for(j=w-1;j>=0;j--)
			if( f[j] +c[i] <f[j+e[i]])
				f[j+e[i]]=f[j]+c[i];
	m=mult;
	for(j=w;j<Q;j++)
		if(f[j]<m)
			m=f[j];
		if(m!=mult)
			out<<m;
		else
			out<<-1;
	return 0;
}