Cod sursa(job #3153047)

Utilizator vlad_maneaManea Vlad Cristian vlad_manea Data 27 septembrie 2023 19:57:22
Problema Energii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <iostream>
#include <fstream>

#define INF 1000000

using namespace std;

ifstream fin("energii.in");
ofstream fout("energii.out");

int n, gmax, dp[10005];

void init() {
    for (int i=1; i<=10000; i++)
        dp[i]=INF;
}

void citire() {
    fin>>n>>gmax;
    init();
    int g, v;
    for (int i=0; i<n; i++) {
        fin>>g>>v;
        for (int j=10000; j>=g; j--)
            dp[j]=min(dp[j], dp[j-g]+v);
    }
}

int minim() {
    int vmin=INF;
    for (int i=10000; i>=gmax; i--)
        vmin=min(vmin, dp[i]);
    if (vmin==INF)
        return -1;
    return vmin;
}

int main() {
    citire();
    fout<<minim();
    return 0;
}