Cod sursa(job #1595192)

Utilizator RaresEGaySopterean Adrian RaresEGay Data 10 februarie 2016 00:08:20
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include<fstream>
#include<iostream>
#define maxn 5001
#define maxg 10001

using namespace std;

int g[maxn], V[maxn];
int F[maxg];

int main()
{

    ifstream fin("rucsac.in");
    ofstream fout("rucsac.out");
    // Citirea numarului de obiecte si a greutatii maxime
    int N, G;
    fin>>N>>G;
    // Citirea greutatii si a valorii
    for(int i=1;i<=N;i++)
        fin>>g[i]>>V[i];
    int s=0;

    for(int i=1;i<=N;i++)
    {
        for(int j=G-g[i];j>=0;j--)
        {
            if(F[j+g[i]] < F[j] + V[i])
                F[j+g[i]] = F[j] + V[i];
            if(F[j+g[i]] > s)
                s = F[j+g[i]];
        }
    }
    fout<<s;
}