Cod sursa(job #1845665)

Utilizator FeriCsiki Francisc Alexandru Feri Data 11 ianuarie 2017 19:28:11
Problema Problema rucsacului Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <iostream>
#include <fstream>

using namespace std;

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

int n,p[502],g[502],prof[502];

int main()
{
    int i,j,k;
    in>>n>>k;
    for(i=1;i<=k;i++)
        prof[i]=-1;
    prof[0]=0;
    for(i=1;i<=n;i++)
    {
        in>>g[i]>>p[i];
    }
    for(i=1;i<=n;i++)
    {
        for(j=k-g[i];j>=0;j--)
        {
            if(prof[j]!=-1)
            {
                if(prof[j]+p[i]>prof[j+g[i]])
                {
                    prof[j+g[i]]=prof[j]+p[i];
                }
            }
        }
    }
    /*for(i=1;i<=n;i++)
        out<<prof[i]<<" ";
    out<<'\n';
    for(i=1;i<=n;i++)
        out<<p[i]<<" "<<g[i]<<'\n';
    out<<'\n';*/
    out<<prof[k];
    return 0;
}