Cod sursa(job #2516374)

Utilizator betybety bety bety Data 31 decembrie 2019 10:50:32
Problema Problema rucsacului Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <fstream>
#define inf -1000
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
const int lim=1e4+4;
int dp[lim];
int main()
{
    ios_base::sync_with_stdio(false);
    in.tie(0),out.tie(0);
    int n,g,maxx=-1;
    in>>n>>g;
    for(int i=0;i<=g-1;++i)
        dp[i]=inf;
    dp[0]=0;
    for(int i=1;i<=n;++i)
    {
        int w,profit;
        in>>w>>profit;
        for(int j=g;j>=0;--j)
        if(dp[j]!=inf)
        {
            if(j+w<=g)
                dp[j+w]=max(dp[j+w],dp[j]+profit);
        }
    }
    for(int j=0;j<=g;++j)
    if(dp[j]>maxx)
        maxx=dp[j];
    out<<maxx;
    return 0;
}