Cod sursa(job #1643067)

Utilizator radudurlesteanuDurlesteanu Radu Stefan radudurlesteanu Data 9 martie 2016 17:24:31
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <cstdio>
#include <algorithm>
#include <cstring>
#define NR 9999999
using namespace std;
int n,e[1001],c[1001],w,i,j,a[5001],b[5001];
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d%d",&n,&w);
for (i=1;i<=n;i++)
scanf("%d%d",&e[i],&c[i]);
for (j=1;j<=w;j++) a[j]=NR;
b[0]=NR;
for (i=1;i<=n;i++)
   {
   for (j=1;j<=w;j++)
   if(j-e[i]>=0) b[j]=min(a[j],a[j-e[i]]-c[i]);
            else b[j]=a[j];
    memcpy(a,b,sizeof(b));
   }
printf("%d",NR-b[w]);
}