Pagini recente » Cod sursa (job #3208416) | Cod sursa (job #195268) | Cod sursa (job #2427247) | Cod sursa (job #2125666) | Cod sursa (job #2920061)
#include <fstream>
using namespace std;
ifstream in ("energii.in");
ofstream out ("energii.out");
const int max_size = 1e3 + 1, max_dp = 1e4 + 1, INF = 1e9 + 1;
int sol[max_dp], p[max_size], e[max_size];
int main ()
{
for (int i = 1; i < max_dp; i++)
{
sol[i] = INF;
}
int n, g;
in >> n >> g;
for (int i = 1; i <= n; i++)
{
in >> e[i] >> p[i];
}
for (int i = 1; i <= n; i++)
{
for (int j = g - e[i]; j >= 0; j--)
{
if (sol[j + e[i]] > sol[j] + p[i])
{
sol[j + e[i]] = sol[j] + p[i];
}
}
}
if (sol[g] == INF)
{
sol[g] = -1;
}
out << sol[g];
in.close();
out.close();
return 0;
}