Cod sursa(job #1457629)

Utilizator tamionvTamio Vesa Nakajima tamionv Data 3 iulie 2015 19:40:21
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include <fstream>
#include <vector>
#include <utility>
using namespace std;

int rezolva(const vector<pair<int, int> >& obiecte, const int max_w){
	vector<int> max_p_pe_w(max_w+1, 0);
	for(const auto cur : obiecte){
		for(int i = max_w-cur.first; i >= 0; --i){
			max_p_pe_w[i+cur.first] = max(max_p_pe_w[i+cur.first],
				max_p_pe_w[i] + cur.second); } }
	return max_p_pe_w[max_w]; }

int main(){
	ifstream f("rucsac.in");
	ofstream g("rucsac.out");
	int n, max_w;
	f >> n >> max_w;
	vector<pair<int, int> > obiecte(n);
	for(auto& x : obiecte){
		f >> x.first >> x.second; }
	g << rezolva(obiecte, max_w);
	return 0; }