Cod sursa(job #1274937)

Utilizator Corina1997Todoran Ana-Corina Corina1997 Data 24 noiembrie 2014 16:33:45
Problema Problema rucsacului Scor 35
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include <fstream>
using namespace std;

#define MAXN 10000
#define MAXG 10000

ifstream is("rucsac.in");
ofstream os("rucsac.out");

int c[MAXN][MAXG];
int n, S, g[MAXG], v[MAXN];

int main()
{
    is >> n >> S;
    for ( int i = 1; i <= n; i++ )
        is >> g[i] >> v[i];
    for ( int i = 1; i <= n; i++ )
        for ( int j = 0; j <= S; j++ )
        {
            c[i][j] = c[i-1][j];
            if ( j >= g[i] )
                if ( c[i][j] <  c[i-1][j-g[i]] + v[i] )
                    c[i][j] = c[i-1][j-g[i]] + v[i];
        }
    os << c[n][S];
    is.close();
    os.close();
    return 0;
}