Cod sursa(job #1004859)
Utilizator | Data | 3 octombrie 2013 19:05:45 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.45 kb |
#include<fstream>
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
int w[5001], p[5001], g, n, i, cw, optim[10001];
int sol, j;
int main() {
fin >> n >> g;
for (i = 1; i <= n; i++)
fin >> w[i] >> p[i];
for (i = 1; i <= n; i++)
for (j = g - w[i]; j >= 0; j--)
if (optim[j + w[i]] < optim[j] + p[i])
optim[j + w[i]] = optim[j] + p[i];
fout << optim[g];
}