Pagini recente » Cod sursa (job #1411167) | Cod sursa (job #2538185) | Cod sursa (job #540760) | Cod sursa (job #2686604) | Cod sursa (job #2941995)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int main()
{
int n, wMax;
fin >> n >> wMax;
vector<pair<int, int>> vec(n + 1);
for (int i = 1; i <= n; i++)
fin >> vec[i].first >> vec[i].second;
vector<vector<int>> best(n + 1, vector<int>(wMax + 1, 0));
for (int i = 1; i <= n; i++)
for (int w = vec[i].first; w <= wMax; w++)
best[i][w] = max(best[i - 1][w], best[i - 1][w - vec[i].first] + vec[i].second);
fout << best[n][wMax];
return 0;
}