Pagini recente » Cod sursa (job #3156441) | Cod sursa (job #3219839) | Cod sursa (job #2335799) | Cod sursa (job #2173829) | Cod sursa (job #1450075)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
const int inf = (1 << 30) - 1, MAX = 5001;
int g, w, e, c, minn = inf, dp[MAX];
int main()
{
fin >> g >> w;
for (int i = 1; i < MAX; i++)
dp[i] = inf;
for (; g; g--){
fin >> e >> c;
for (int i = w; i >= 0; i--){
int temp = min (w, i + e);
dp[temp] = min (dp[temp], dp[i] + c);
}
}
fout << (dp[w] == inf ? -1 : dp[w]);
return 0;
}