Cod sursa(job #1997977)

Utilizator Victor24Vasiesiu Victor Victor24 Data 5 iulie 2017 23:39:04
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <fstream>
using namespace std;

int n, a[10005], i, j, g, p, gmax, ma;

long long sma, s;

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

int main ()
{

    fin>>n>>gmax;

    for ( i = 1; i <= n; i++ )
    {
        fin>>g>>p;
        for ( j = gmax ; j - g > 0 ; j-- )
        {
            if ( a[ j - g ] && (a[ j - g] + p) > a[j] )
            {
                a[j] =  a[j-g] + p;
            }
        }

        if ( p > a[g] )
        {
            a[g] = p;
        }
    }

    for ( i = gmax ; i >=1 ; i-- )
    {
        if ( a[i] > ma)
        {
            ma=a[i];
        }
    }

    fout<<ma;

    return 0;
}