Cod sursa(job #3153034)
Utilizator | Morariu Razvan MoraZ3U | Data | 27 septembrie 2023 19:23:24 |
---|---|---|---|
Problema | Problema rucsacului | Scor | 0 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.46 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
struct obiecte {
int w;
int p;
};
obiecte ob[5000];
int v[10000];
int main()
{
int n, g;
cin >> n >> g;
for (int i = 0; i < n; i++) {
in >> ob[i].w >> ob[i].p;
}
for (int i = 0; i < n; i++) {
int w = ob[i].w;
int p = ob[i].p;
for (int j = g; j >= w; j--) {
v[j] = max(v[j], v[j - w] + p);
}
}
out << v[g];
}