Cod sursa(job #2165392)

Utilizator KennyyyGardner Kenneth Benjamin Kennyyy Data 13 martie 2018 12:04:01
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include <fstream>
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int n,w,i,j,k,t,b[2001],a[50000][50000];
int main()
{ f>>n>>w; k=-1;
  for(i=1;i<=n;i++){ f>>b[2*i-1]>>b[2*i];
                     t=t+b[2*i];
                    }
  for(j=1;j<=t;j++)
  {a[1][j]=0;
   for(i=2;i<=n+1;i++)
   {
       if(b[2*i-2]>j) a[i][j]=a[i-1][j];
       else a[i][j]=max(b[2*i-3]+a[i-1][j-b[2*i-2]],a[i-1][j]);
   } if(a[n+1][j]>=w)
   {k=j; j=t+1;
   }
  }
 g<<k;
  return 0;
}