Cod sursa(job #977369)

Utilizator raulmuresanRaul Muresan raulmuresan Data 25 iulie 2013 19:21:06
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>
using namespace std;

ifstream fin("rucsac.in");
ofstream fout("rucsac.out");

int n, g, i, j, nr, gr, p, sol, sum[10001];

int main() {
    fin >> nr >> gr;
    for (i=0; i < nr;i++) {
        fin >> g >> p;
        for (j = gr - g; j >= 0;j--){
            if(sum[j]!=0)
            {

            if (sum[j + g] < sum[j] + p) {
                sum[j + g] = sum[j] + p;
                if (sum[j + g] > sol)
                    sol = sum[j + g];
            }

            }

        }
        if(sum[g]<p)
        sum[g]=p;
    }
    fout << sol;
    fout.close();
    return 0;
}