Cod sursa(job #2732576)

Utilizator darkeagleDaniel Popescu darkeagle Data 29 martie 2021 02:20:25
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.5 kb
#include <bits/stdc++.h>
using namespace std;
long long v[5001], w[5001];
long long optim[10001];
int main()
{

freopen("rucsac.in", "r", stdin);
freopen("rucsac.out", "w", stdout);
int n, W;
cin >> n >> W;
for(int i = 1; i <= n ; i++) {
	cin >> v[i] >> w[i];
}
int sol = 0;
for(int i = 1; i <= n; i++) {
	for(int j = W - v[i]; j >= 0; j--) {
		if(optim[j + v[i]] < optim[j] + w[i])
		{
			optim[j + v[i]] = optim[j] + w[i];
			if(optim[j + v[i]] > sol)
				sol = optim[j + v[i]];
		}
	}
}
cout << sol;

	return 0;

}