Cod sursa(job #2349811)
Utilizator | Data | 20 februarie 2019 18:52:38 | |
---|---|---|---|
Problema | Energii | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.46 kb |
#include <fstream>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
const int NMAX = 10001;
int op[NMAX], g, w, e, c, s;
int main() {
fin >> g >> w;
for(int i = 0; i <= w; ++i)
op[i] = NMAX;
for(int i = 1; i <= g; ++i) {
fin >> e >> c;
for(int j = w; j >= 1; --j)
e >= j ? op[j] = min(op[j], c) : op[j] = min(op[j], op[j - e] + c);
}
op[w] == NMAX ? fout << -1 : fout << op[w];
}