Pagini recente » Cod sursa (job #530875) | Cod sursa (job #2819974) | Cod sursa (job #2963480) | Cod sursa (job #496984) | Cod sursa (job #2732576)
#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;
}