Cod sursa(job #2914670)

Utilizator vlad2009Vlad Tutunaru vlad2009 Data 20 iulie 2022 17:24:06
Problema Energii Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>

using namespace std;

const int MAX_G = 1e3;
const int MAX_W = 5 * 1e3;
int dp[MAX_W + 1];
int g, w;

int main() {
    ifstream fin("energii.in");
    ofstream fout("energii.out");
    fin >> g >> w;
    for (int i = 1; i <= MAX_W; i++) {
        dp[i] = (1 << 30);
    }
    dp[0] = 0;
    for (int i = 1; i <= g; i++) {
        int a, b;
        fin >> a >> b;
        for (int j = MAX_G; j >= a; j--) {
            dp[j] = min(dp[j], dp[j - a] + b);
        }
    }
    int answer = (1 << 30);
    for (int i = w; i <= MAX_W; i++) {
        answer = min(answer, dp[i]);
    }
    fout << answer;
    return 0;
}