Pagini recente » Cod sursa (job #3236786) | Cod sursa (job #558198) | Rating brinceanu cristina (cristina-alina) | Cod sursa (job #905346) | Cod sursa (job #2302422)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
int main() {
ifstream fin("rucsac.in");
int N, G;
fin >> N >> G;
int g[10003], p[10003];
for (int i = 0; i < N; i++)
fin >> g[i] >> p[i];
fin.close();
int d[10003][10003] = {-99999};//d[ob][greutate]
d[0][0] = 0;
//for (int i = 0; i <= G; i++)
// d[0][i] = -99999;
for (int i = 1; i <= N; i++) {
for (int j = 0; j <= G; j++) {
if (j - g[i-1] >= 0) d[i][j] = max(d[i - 1][j], d[i - 1][j - g[i-1]] + p[i-1]);
else d[i][j] = d[i - 1][j];
}
}
ofstream fout("rucsac.out");
//fout << d[N-1][G];
int maxim = 0;
for (int i = 0; i <= G; i++) {
if (d[N][i] > maxim)
maxim = d[N][i];
}
fout << "a mers";
fout << maxim;
fout.close();
//system("PAUSE");
return 0;
}