Pagini recente » Cod sursa (job #176713) | Cod sursa (job #155346) | Cod sursa (job #3222553) | Cod sursa (job #761275) | Cod sursa (job #3262353)
#include <stdio.h>
#define MAX(a, b) (a > b ? a : b)
int v[10000];
int main()
{
FILE *in = fopen("rucsac.in", "r");
int N, g, w, p;
fscanf(in, "%d%d", &N, &g);
for (int n = 0; n < N; n++) {
fscanf(in, "%d%d", &w, &p);
for (int i = g; i >= w && i >= 1; i--)
v[i] = MAX(v[i], v[i - w] + p);
}
fclose(in);
FILE *out = fopen("rucsac.out", "w");
fprintf(out, "%d", v[g]);
fclose(out);
}