Cod sursa(job #2940481)

Utilizator gianiferSpita Alexandru-Mihai gianifer Data 15 noiembrie 2022 17:52:48
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include<fstream>

using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
int n,greutate_max,greutate[5005],pret[5005],dp[10005];
inline int maxim(int a,int b)
{
     if(a>b)
     return a;
     return b;
}
int main()
{cin>>n>>greutate_max;
     for(int i=1;i<=n;i++)
{cin>>greutate[i]>>pret[i];
}
for(int i=1;i<=n;i++)
   for(int j=greutate_max-greutate[i];j>=0;j--)
   {if(dp[j]+pret[i]>dp[j+greutate[i]])
   dp[j+greutate[i]]=dp[j]+pret[i];
}
   int sol=0;
   for(int i=1;i<=greutate_max;i++)
    {sol=maxim(sol,dp[i]);
    }
    cout<<sol;

}