Pagini recente » Cod sursa (job #3256194) | Cod sursa (job #580651) | Cod sursa (job #1507298) | Cod sursa (job #1144065) | Cod sursa (job #2924110)
#include <iostream>
#include <fstream>
#define MAXG 10000
using namespace std;
int solutii[MAXG + 1];
int main()
{
ios_base::sync_with_stdio(false);
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int n, g, i, j, w, p, nou;
fin >> n >> g;
for (i = 0; i < n; i++) {
fin >> w >> p;
for (j = g - w; j > 0; j--)
if (solutii[j] > 0) {
nou = solutii[j] + p;
solutii[j + w] = max(nou, solutii[j + w]);
}
solutii[w] = max(p, solutii[w]);
/*for (j = 1; j <= g; j++)
fout << j << ' ' << solutii[j] << '\n';
fout << "stop\n\n";*/
}
nou = 0;
for (i = 1; i <= g; i++)
nou = max(nou, solutii[i]);
fout << nou;
return 0;
}