Cod sursa(job #613661)

Utilizator bogdan353Costea Bogdan bogdan353 Data 3 octombrie 2011 13:29:49
Problema Problema rucsacului Scor 65
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include<iostream.h>
#include<fstream.h>
int d[2][10001],w[5001],p[5001],n,gr;


int maximus(int a,int b)
{
	if(a>b) return a;
	return b;
}

int main()
{
	

	
ifstream f("rucsac.in");
	ofstream g("rucsac.out");
	
	
	f>>n>>gr;
	
	for(int i=1;i<=n;i++)
		f>>w[i]>>p[i];

	int l=0;
	for(int i=1;i<=n;i++,l=1-l)
		for(int j=0;j<=gr;j++)
		{
			d[1-l][j]=d[l][j];
			if(w[i]<=j)
			d[1-l][j] = maximus(d[1-l][j], d[l][j - w[i]] + p[i]); 
       }
g<<d[l][gr];
}