Cod sursa(job #3219465)

Utilizator Radu_BicliBiclineru Radu Radu_Bicli Data 31 martie 2024 14:37:01
Problema Energii Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("energii.in");
ofstream fout("energii.out");
int n, i, j, e[5002], pr[5002];
int fr[5002], boot;

int main() {
    fin >> n >> boot;
    for(i = 1; i <= n; i++) fin >> e[i] >> pr[i];

    memset(fr, -1, sizeof(fr));
    fr[0] = 0;
    for(i = 1; i <= n; i++) {
        for(j = boot - e[i]; j >= 0; j--) {
            if(fr[j] != -1) {
                int ener = j + e[i];

                if(fr[ener] == -1) fr[ener] = fr[j] + pr[i];
                else fr[ener] = min(fr[ener], fr[j] + pr[i]);
            }
        }
    }

    fout << fr[boot];

    return 0;
}