Pagini recente » Cod sursa (job #2901478) | Cod sursa (job #1808055) | Cod sursa (job #3259137) | Cod sursa (job #904326) | Cod sursa (job #819381)
Cod sursa(job #819381)
#include <fstream>
#include <iostream>
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int i, aw, n, g, M[5005][10005], W[5005], P[5005];
int main() {
fin >> n >> g;
for (i = 1; i <= n; ++i)
fin >> W[i] >> P[i];
fin.close();
for (i = 1; i <= n; ++i) {
for (aw = 0; aw <= g; ++aw) {
if (W[i] <= aw)
M[i][aw] = max(M[i - 1][aw - W[i]] + P[i], M[i - 1][aw]);
else
M[i][aw] = M[i - 1][aw];
}
}
fout << M[n][g];
fout.close();
return 0;
}