Cod sursa(job #952649)

Utilizator primulDarie Sergiu primul Data 23 mai 2013 19:17:29
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include<fstream>
using namespace std;
 
int a[5001],p[5001],d[20001],i,j,n,mx,s;
 
int main()
{
    ifstream f("rucsac.in");
    ofstream g("rucsac.out");
    f >> n >> s;
    for (i=1;i<=n;i++)
        f >> a[i] >> p[i];
    d[0]=1;
    for (i=1;i<=n;i++)
        for (j=s;j>=0;j--)
            if ((d[j]!=0) && (d[j+a[i]]<d[j]+p[i]))
                d[j+a[i]]=d[j]+p[i];
    for (i=0;i<=s;i++)
        if (d[i]>mx)
            mx=d[i];
    g << mx-1;
    return 0;
}