Cod sursa(job #2138771)

Utilizator mircearoataMircea Roata Palade mircearoata Data 21 februarie 2018 21:07:57
Problema Problema rucsacului Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>

using namespace std;

ifstream in("rucsac.in");
ofstream out("rucsac.out");

#define INF 2000000000

int n,g,m,maxx;
int ans[10001];

int main()
{
    in>>n>>g;
    for(int i = 1;i<=g;i++)
        ans[i]=INF;
    for(int i = 1;i<=n;i++)
    {
        int w,p;
        in>>w>>p;
        for(int j = g-w;j>=0;j--)
        {
            if(ans[j+w]!=INF)
                ans[j+w]=max(ans[j+w],ans[j]+p);
            else
                ans[j+w]=ans[j]+p;
        }
    }
    for(int i = 0;i<=g;i++)
        if(ans[i]>maxx)
            maxx=ans[i];
    out<<maxx;
    return 0;
}