Cod sursa(job #2940472)

Utilizator gianiferSpita Alexandru-Mihai gianifer Data 15 noiembrie 2022 17:46:47
Problema Problema rucsacului Scor 25
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include<fstream>

using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
int n,greutate_max,greutate[5005],pret[5005],dp[5005];
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>=1;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;

}