Pagini recente » Cod sursa (job #1391232) | Cod sursa (job #831107) | Cod sursa (job #441165) | Cod sursa (job #2630657) | Cod sursa (job #2905119)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f1("rucsac.in");
ofstream f2("rucsac.out");
int n, g;
int greutate[10015], valoare[10015];
int d[10015];
int main() {
f1 >> n >> g;
for (int i = 1; i <= n; i++) {
f1 >> greutate[i] >> valoare[i];
}
d[g] = valoare[1];
for (int i = 1; i <= n; i++) {
for (int j = g; j >= 1; j--) {
if (j - greutate[i] >= 0) {
if (d[j] < d[j - greutate[i]] + valoare[i])
d[j] = d[j - greutate[i]] + valoare[i];
}
}
}
f2 << d[g] << endl;
f1.close();
f2.close();
return 0;
}