Pagini recente » Cod sursa (job #1561280) | Cod sursa (job #2260310) | Cod sursa (job #2974880) | Cod sursa (job #1181765) | Cod sursa (job #2206724)
#include <fstream>
using namespace std;
ifstream cin ("energii.in");
ofstream cout ("energii.out");
int dp[15005];
int main()
{
int n,w,i,j,e,c,mi=50000005,ok=0;
cin>>n>>w;
for (i=1;i<=n;i++)
{
cin>>e>>c;
for (j=w-1;j>=1;j--)
{
if (dp[j]!=0)
{
if (dp[j+e]!=0)
dp[j+e]=min(dp[j+e],dp[j]+c);
else
dp[j+e]=dp[j]+c;
}
}
if (dp[e]==0)
dp[e]=c;
else
dp[e]=min(c,dp[e]);
}
for (i=15000;i>=w;i--)
{
if (dp[i]<mi&&dp[i]!=0)
{
ok=1;
mi=dp[i];
}
}
if (ok==1)
cout<<mi;
else
cout<<-1;
return 0;
}