Cod sursa(job #945035)

Utilizator cosmin_bobeicaCosmin Bobeica cosmin_bobeica Data 30 aprilie 2013 11:49:04
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include<cstdio>
#include<cstring>
using namespace std;
int P1[10010],P2[10010];
int main()
{
    freopen("rucsac.in","r",stdin);
    freopen("rucsac.out","w",stdout);
    int n,G,i,j,w,p;
    scanf("%d %d",&n,&G);
    for(i=1;i<=n;i++)
    {
        scanf("%d %d",&w,&p);
        for(j=1;j<=G;j++)
            if(j<w)
                P2[j]=P1[j];
            else
                if(P1[j]<P1[j-w]+p)
                    P2[j]=P1[j-w]+p;
                else
                    P2[j]=P1[j];
        memcpy(P1,P2,sizeof(P2));
    }
    printf("%d\n",P2[G]);
}