Pagini recente » Cod sursa (job #2289263) | Cod sursa (job #1999206) | Cod sursa (job #2892048) | Cod sursa (job #1884932) | Cod sursa (job #1005754)
#include <iostream>
#include <fstream>
using namespace std;
#define MAXN 5005
#define MAXG 10005
ifstream f("energii.in");
ofstream g("energii.out");
int w[MAXN], p[MAXN];
int optim[MAXG] = {0};
int main()
{
int n, gr;
f >> n >> gr;
for (int i = 1; i <= n; i++) {
f >> w[i] >> p[i];
}
int sol = 0;
for (int i = 1; i <= n; i++) {
for (int j = gr - w[i]; j >= 0; j--) {
optim[j + w[i]] = max(optim[j + w[i]], optim[j] + p[i]);
if (sol < optim[j + w[i]]) {
sol = optim[j + w[i]];
}
}
}
g << sol;
return 0;
}