Pagini recente » Cod sursa (job #2717539) | Cod sursa (job #2308298) | Cod sursa (job #1877857) | Cod sursa (job #2496116) | Cod sursa (job #1259430)
#include <fstream>
#include <iostream>
#include <algorithm>
#define NMAX 5010
#define VMAX 1000000
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int val[NMAX],b[NMAX];
int main()
{
int N,W,eg,cg;
f >> N >> W;
for(int i = 1; i <= W; i++)
b[i] = VMAX;
for(int i = 1; i <= N; i++){
f >> eg >> cg;
for(int j = 1; j <= W; j++){
if(eg >= j)
val[j] = min(b[j], cg);
else
val[j] = min(b[j], b[j-eg] + cg);
}
for(int j = 1; j <= W; j++)
b[j] = val[j];
}
if(val[W] == VMAX)
g << -1;
else
g << val[W];
return 0;
}