Cod sursa(job #2331516)

Utilizator vladstanciuVlad Stanciu vladstanciu Data 29 ianuarie 2019 17:38:27
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>



using namespace std;

ifstream fin("rucsac.in");

ofstream fout("rucsac.out");

int profit[10002],g[10002],p[10002];



int main()

{

    int n,k;

    fin>>n>>k;

    for(int i=1;i<=n;i++)

       fin>>g[i]>>p[i];

    for(int i=1;i<=k;i++)

        profit[i]=-1;

    for(int i=1;i<=n;i++)

    {

        for(int j=k-g[i];j>=0;j--)

        {

            if(profit[j]!=-1 && profit[j]+p[i]>profit[j+g[i]])

              profit[j+g[i]]=profit[j]+p[i];

        }

    }

    int vmax=0;

    for(int i=1;i<=k;i++)

       if(profit[i]>vmax)

          vmax=profit[i];

    fout<<vmax;

    return 0;

}