Cod sursa(job #3203904)

Utilizator radu._.21Radu Pelea radu._.21 Data 14 februarie 2024 23:08:39
Problema Energii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <fstream>


using namespace std;

int n,m,dp[5001],e[1001],cost[1001];
ifstream fin("energii.in");
ofstream fout("energii.out");
int main(){
    fin>>n;
    fin>>m;
    for(int i=1;i<=n;i++){
        fin>>e[i]>>cost[i];

    }
    /// dp[i] = costul minim pentru a ajunge la energia i
    dp[0]=0;
    for(int i =1;i<=m;i++)
        dp[i]=1000000000;
    for(int i=1;i<=n;i++){
        for(int j=m-1;j>=0;j--){
            if(dp[j]!=1000000000){
            int aux = min(m,j+e[i]);
            dp[aux]=min(dp[aux],dp[j]+cost[i]);

            }
        }
    }
    if(dp[m]!=1000000000)
    fout<<dp[m];
    else
        fout<<-1;
    return 0;
}