Pagini recente » Cod sursa (job #93460) | Cod sursa (job #521563) | Cod sursa (job #534751) | Cod sursa (job #86684) | Cod sursa (job #1208246)
#include <cstdio>
#include <algorithm>
using namespace std;
#define MAX_INT 10000000
FILE *fin = fopen("energii.in","r");
FILE *fout = fopen("energii.out","w");
int e, w, v[2][5001], i, j, a, b;
int main() {
fscanf(fin, "%d", &e);
fscanf(fin, "%d", &w);
v[0][0] = 1;
for(i = 1;i <= w;i++) {
v[1][i] = MAX_INT;
}
for(i = 1;i <= e;i++) {
fscanf(fin, "%d %d", &a, &b);
for(j = w;j >= 0;j--) {
if(v[0][j] == 1) {
v[0][min(w, j + a)] = 1;
v[1][min(w, j + a)] = min(v[1][min(w, j + a)], b + v[1][j]);
}
}
}
if(v[0][w] == 0) {
fprintf(fout, "-1\n");
}
else {
fprintf(fout, "%d\n", v[1][w]);
}
fclose(fin);
fclose(fout);
return 0;
}