Cod sursa(job #1479261)

Utilizator tudorgalatanRoman Tudor tudorgalatan Data 30 august 2015 21:07:18
Problema Problema rucsacului Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.78 kb
// Galatan Tudor - Ion Luca Theoretical High School
// Husi, Romania, Su, August 30, 2015

#include <algorithm>
#include <cstring>
#include <fstream>
#include <vector>
 
#define Max_No 5001
#define Max_Wgt 10001
  
using namespace std;
 
ifstream in("rucsac.in");
ofstream out("rucsac.out");
 
int w[Max_No], p[Max_No];
int Ov[Max_Wgt];
 
int N, Wgt, i, sol, j;
int main() 
{
    in >> N >> Wgt;
        for (i=1; i<=N; i++)
           in >> w[i] >> p[i];
        Ov[0] = 0;
        sol = 0;
    for (i=1; i<=N; i++)
            for (j=Wgt-w[i]; j>=0; j--)
        {
            if (Ov+[j+w[i]] < Ov[j]+p[i])
            {
                Ov[j+w[i]] = Ov[j]+p[i];
                if (Ov[j+w[i]] > sol)
                    sol = Ov[j+w[i]];
            }
        }
    out << sol;
    return 0;
}