Pagini recente » Cod sursa (job #2629421) | Cod sursa (job #2628578) | Cod sursa (job #1158773) | Cod sursa (job #1300012) | Cod sursa (job #2850308)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int n, W;
int vi[101], wi[101];
int dp[101][10001];
int main()
{
f >> n >> W;
for (int i = 0; i < n; i++)
f >> wi[i] >> vi[i];
for (int i = 1; i <= n; i++)
for (int j = 1; j <= W; j++)
if (wi[i - 1] <= j)
dp[i][j] = max(vi[i - 1] + dp[i - 1][j - wi[i - 1]], dp[i - 1][j]);
else dp[i][j] = dp[i - 1][j];
g << dp[n][W];
}