Pagini recente » Cod sursa (job #2923475) | Cod sursa (job #2998994) | Cod sursa (job #3236478) | Cod sursa (job #1217301) | Cod sursa (job #1018308)
#include <fstream>
using namespace std;
const int INF=2000000000;
ifstream fin("energii.in");
ofstream fout("energii.out");
int n,w,pd[1002][5002],c[1002],e[1002],i,j;
int main()
{
fin>>n>>w;
for(i=1;i<=n;i++)
fin>>e[i]>>c[i];
for(i=0;i<=n;++i)
for(j=1;j<=w;++j)
pd[i][j]=INF;
for(i=1;i<=n;++i)
for(j=1;j<=w;++j)
if(e[i]<=j)
pd[i][j]=min(pd[i-1][j],pd[i-1][j-e[i]]+c[i]);
else
pd[i][j]=min(pd[i-1][j],c[i]);
if(pd[n][w]==INF)
fout<<"-1\n";
else
fout<<pd[n][w]<<"\n";
return 0;
}