Pagini recente » Cod sursa (job #680041) | Cod sursa (job #2597763) | Cod sursa (job #2796994) | Cod sursa (job #1301135) | Cod sursa (job #2223475)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f ("energii.in");
ofstream g ("energii.out");
int G,W,eg[1005],cg[1005],i,v[1005][5005],j,m=2e9,x;
void citire()
{f>>G>>W;
for(i=1;i<=G;i++)f>>eg[i]>>cg[i];
}
int main()
{ citire();
for(i=0;i<=G;i++)for(j=1;j<=W;j++)v[i][j]=2e9;
for(i=1;i<=G;i++)
for(j=W;j>=0;j--)
{v[i][j]=v[i-1][j];
if(eg[i]+j>=W)
m=min(m,v[i-1][j]+cg[i]);
if(eg[i]+j<=W)
v[i][j+eg[i]]=min(v[i][j+eg[i]],v[i-1][j]+cg[i]);}
if(m==2e9)g<<-1;else g<<m<<" ";
return 0;
}