Pagini recente » Cod sursa (job #1234991) | Cod sursa (job #3231189) | Cod sursa (job #1962554) | Cod sursa (job #1231981) | Cod sursa (job #2600825)
#include <bits/stdc++.h>
#define oo 9999999
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int G, W;
int e[1005], c[1005];
int dp[5005];
int minim = oo;
void Read()
{
f>>G>>W;
for(int i = 1;i <= G;++i)
f>>e[i]>>c[i];
memset(dp, oo, sizeof(dp));
dp[0] = 0;
for(int i = 1;i <= G;++i)
for(int j = W;j >= 0;--j)
if(j + e[i] >= W)
minim = min(minim, dp[j] + c[i]);
else if(dp[j + e[i]] > dp[j] + c[i])
dp[j + e[i]] = dp[j] + c[i];
if(minim == oo)
g<<-1;
else
g<<minim;
}
int main()
{
Read();
return 0;
}