Cod sursa(job #2205804)

Utilizator IustinPetrariuIustinian Petrariu IustinPetrariu Data 20 mai 2018 12:49:14
Problema Energii Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <iostream>
#include <fstream>
#define NMAX 20005
#define INF 0x3f3f3f
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");

int n,w,dp[NMAX];
int main()
{
    for(int i = 1; i <= NMAX; i++)
        dp[i]=INF;
    fin>>n>>w;
    while(n--)
    {
        int energia,cost;
        fin>>energia>>cost;
        for(int i = w - 1; i >= 0 ; i--)
        {
            dp[i+energia]=min(dp[i+energia], dp[i] +cost); /// ce aveam la pasul anterior plus costul current;

        }
    }
    if(dp[w]==INF) fout<<-1;
    else fout<<dp[w];


}