Pagini recente » Cod sursa (job #2113231) | Cod sursa (job #633620) | Cod sursa (job #1948832) | Cod sursa (job #2816093) | Cod sursa (job #1567701)
#include <bits/stdc++.h>
using namespace std;
ifstream in("energii.in");
ofstream out("energii.out");
int e[1008],c[1008],dp[1002][80000];
#define INF 999999999
int main()
{
long long g,w,nre=0;
in>>g>>w;
for(int i=1; i<=g; i++)
{
in>>e[i]>>c[i];
nre+=e[i];
}
for(int i=0; i<=2; i++)
for(int j=0; j<=w; j++)
dp[i][j]=INF;
if(nre<w)
{
out<<"-1";
return 0;
}
for(int i=1; i<=g; i++)
for(int j=0; j<=w; j++)
{
if(e[i]<j)dp[i][j]=min(dp[i-1][j],dp[i-1][j-e[i]]+c[i]);
else dp[i][j]=min(dp[i-1][j],c[i]);
}
out<<dp[g][w];
return 0;
}