Pagini recente » Cod sursa (job #812013) | Cod sursa (job #2387499) | Cod sursa (job #58417) | Cod sursa (job #2803575) | Cod sursa (job #2835013)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("energii.in");
ofstream fout("energii.out");
int n,g,dp[5010],p[1010],w[1010],best=INT_MAX,i,cw;
int main()
{
fin>>n>>g;
for(i=1;i<=n;i++)
fin>>w[i]>>p[i];
for(i=0;i<=g;i++)
dp[i]=1000000;
for(i=1;i<=n;i++)
for(cw=g;cw>=0;cw--)
if(cw<=w[i])
dp[cw]=min(dp[cw],p[i]);
else dp[cw]=min(dp[cw],dp[cw-w[i]]+p[i]);
if(dp[i]==1000000)
fout<<"-1\n";
else fout<<dp[g]<<'\n';
return 0;
}