Cod sursa(job #744815)

Utilizator NitaMihaitavoidcube NitaMihaita Data 9 mai 2012 18:13:15
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include<iostream>
#include<fstream>
#include<algorithm>
using namespace std;
int a[3][5001];
int main ()
{
ifstream f("in");
ofstream g("out");
int n,W,o=999999,p,w,i,j,mat=2;
f>>n>>W;
for(i=1;i<=n;++i)
	{
	f>>w>>p;
	for(j=1;j<=W;++j)
		if(i==1)
			if(w>=j)a[3-mat][j]=p;
			else a[3-mat][j]=o;
		else
			if(w>j)a[3-mat][j]=min(a[mat][j],p);
		else a[3-mat][j]=min(a[mat][j],a[mat][j-w]+p);
		
	mat=3-mat;
	}
if(a[mat][W]<o)g<<a[mat][W]<<"\n";
else g<<"-1\n";
f.close();
g.close();
return 0;
}