Cod sursa(job #1818573)

Utilizator mateianicaiANICAI MATEI mateianicai Data 29 noiembrie 2016 13:49:43
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <fstream>
#define nmax 1001

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

int n,G;
int c[10001];
struct obiect
{
    int g;
    int c;
};
obiect a[5001];

void citire()
{
    fin>>n>>G;
    int i;
    for (i=1;i<=n;i++)
        fin>>a[i].g>>a[i].c;
}

void dinamica()
{
    int i,j;
    for (i=1;i<=n;i++)
        for (j=G;j>=1;j--)
        if (a[i].g>j) c[j]=c[j];
    else c[j]=max(c[j],a[i].c+c[j-a[i].g]); fout<<c[G];
}

int main()
{
    citire();
    dinamica();
    return 0;
}