Pagini recente » Cod sursa (job #26012) | Cod sursa (job #707102) | Cod sursa (job #2412024) | Cod sursa (job #2700270) | Cod sursa (job #2640458)
//#include "pch.h"
#include <iostream>
#include <vector>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("energii.in");
ofstream o("energii.out");
const int oo = (int)(1e9);
int g, w, e[1001], c[1001], dp[1001][5001];
int main()
{
f >> g >> w;
for (int i = 1; i <= g; i++)
for (int j = 1; j <= w; j++)
dp[i][j] = oo;
for (int i = 1; i <= g; i++)
f >> e[i] >> c[i];
dp[1][e[1]] = c[1];
for (int i = 2; i <= g; i++)
{
for (int j = 1; j <= w; j++)
{
dp[i][j] = dp[i - 1][j];
if (e[i] <= j)
dp[i][j] = min(dp[i][j], dp[i - 1][j - e[i]] + c[i]);
else
dp[i][j] = min(dp[i][j], c[i]);
}
}
if (dp[g][w] != oo)
o << dp[g][w];
else
o << -1;
return 0;
}