Cod sursa(job #1417913)

Utilizator theodor.moroianuTheodor Moroianu theodor.moroianu Data 11 aprilie 2015 13:43:06
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include <fstream>
using namespace std;

int v[10001];

int main(){
	
	v[0] = 1;

	ifstream in("rucsac.in");
	ofstream out("rucsac.out");

	int n, g, cv, cg, j;
	in >> n >> g;

	for (int i = 0; i < n; i++){
		in >> cg >> cv;
		
		for (j = (g - cg > 0) ? g - cg : 0; j >= 0; j--)
			if (v[j] && v[j + cg] < v[j] + cv)
				v[j + cg] = v[j] + cv;
	}

	int maxim = 0;

	for (int i = 0; i <= g; i++)
		if (v[i] > maxim)
			maxim = v[i];
	out << maxim - 1;
}