Cod sursa(job #2978130)

Utilizator DomnulMilandruMilandru Nicon-David DomnulMilandru Data 13 februarie 2023 08:51:24
Problema Problema rucsacului Scor 65
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.91 kb
/******************************************************************************

                              Online C++ Compiler.
               Code, Compile, Run and Debug C++ program online.
Write your code in this editor and press "Run" button to compile and execute it.
*******************************************************************************/

#include <fstream>

using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
int W[5001],P[5001],dp[5001],n,G,k;
int main()
{
    cin>>n>>G;
    for(int i=1;i<=n;i++)
        cin>>W[i]>>P[i];
    int maxi=-1;
    for(int i=1;i<=n;i++)
       for(int j=G-W[i];j>=0;j--)
         {
             k=j+W[i];
             if(dp[j]+P[i]>dp[k])
             {
                 dp[k]=dp[j]+P[i];
                 maxi=max(dp[k],maxi);
             }
             ///cout<<dp[j+W[i]]<<" ";
         }
    cout<<maxi;
    return 0;
}