Cod sursa(job #764752)

Utilizator MichelJumatate Teodor-Mihail Michel Data 6 iulie 2012 09:08:13
Problema Energii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include<fstream> 
using namespace std;
ifstream f("energii.in"); 
ofstream h("energii.out"); 
int a[10001],w,i,n,x,k,j; 
int main()
{ 
	f>>n>>w; 
	a[0]=0; 
	for(i=1;i<=w;i++) 
		a[i]=-1; 
	for(i=1;i<=n;i++) 
	{
		f>>x>>k; 
		for(j=w;j>=0;j--)
		{ 
			if(a[j]!=-1) 
				if(j+x<=w) 
				{ 
					if(a[j+x]==-1||a[j+x]>k+a[j]) 
						a[j+x]=k+a[j]; 
				} 
				else
					if(a[w]>k+a[j]||a[w]==-1) 
						a[w]=k+a[j]; 
		} 
	} 
	h<<a[w]; 
	return 0; 
}