Pagini recente » Cod sursa (job #1270926) | Cod sursa (job #2445276)
#include <iostream>
#include <cmath>
#include <algorithm>
#include <fstream>
#define nmax 1000001
#define rep(a,b,c) for(a = b; a <= c; ++a)
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int n, x, k, i, j, v[10001], gen, gen1;
int main()
{
fin >> n >> gen1;
rep(i,1,gen1)
v[i] = nmax;
rep(i,1,n)
{
fin >> gen >> x;
for(j = gen1; j >= 0; --j)
{
if(v[j] != nmax && gen + j <= gen1)
v[j + gen] = min(v[j + gen], v[j] + x);
if(gen + j > gen1)
v[gen1] = min(v[gen1], v[j] + x);
}
}
if(v[gen1] == nmax)
fout << -1;
else
fout << v[gen1];
return 0;
}