Pagini recente » Cod sursa (job #2712801) | Cod sursa (job #3273533) | Cod sursa (job #1150339) | Cod sursa (job #755179) | Cod sursa (job #1798801)
#include <fstream>
#include <limits.h>
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
#define inf INT_MAX
int minim(unsigned int a, unsigned int b)
{
return (a > b) ? b : a;
}
int main()
{
int G, W, i, c, d, j;
f >> G >> W;
int v[W + 1];
v[0] = 0;
for(i = 1; i < W + 1; i++)
v[i] = inf;
for(i = 0; i < G; i++)
{
f >> c >> d;
if(c > W)
c = W;
for(j = W; j > -1; j--)
v[minim(W, j + c)] = minim(v[minim(W, j + c)], v[j] + d);
}
if(v[W] != inf)
g << v[W];
else
g << -1;
return 0;
}