Pagini recente » Cod sursa (job #1359034) | Cod sursa (job #900780) | Cod sursa (job #2678217) | Cod sursa (job #2425160) | Cod sursa (job #1500985)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int dp[5001],i,n,w,e[1001],c[1001],j;
int main()
{
f>>n;
f>>w;
for (i=1;i<=n;i++)
f>>e[i]>>c[i];
for (i=1;i<=w;i++) dp[i]=2000000000;
for (i=1;i<=n;i++)
{
for (j=e[i];j<=w-1;j++)
{
dp[j]=min(dp[j-e[i]]+c[i],dp[j]);
}
for (j=w-e[i];j<=w;j++)
{
dp[w]=min(dp[w],dp[j]+c[i]);
}
}
if (dp[w]!=2000000000) g<<dp[w];
else g<<-1;
return 0;
}