Cod sursa(job #2973671)

Utilizator TODEToderita Mihai TODE Data 1 februarie 2023 15:49:46
Problema Energii Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <fstream>
using namespace std;

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

const int N = 5000;
const int INF = 1e9;
int dp[N + 1];

int main(){
    int nr_gen , e_min;
    in >> nr_gen >> e_min;
    for(int i = 1 ; i <= e_min ; i++){
        dp[i] = INF;
    }
    for(int i = 1 ; i <= nr_gen ; i++){
        int e_i , c_i;
        in >> e_i >> c_i;
        for(int j = 0 ; j <= e_min - 1 ; j++){
            if(dp[j] != INF){
                if(j + e_i < e_min){
                    dp[j + e_i] = min(dp[j + e_i] , dp[j] + c_i);
                }
                else{
                    dp[e_min] = min(dp[e_min] , dp[j] + c_i);
                }
            }
        }
    }
    out << dp[e_min];

}