Cod sursa(job #2712840)

Utilizator ElektrykT E S L A P E F E L I E Elektryk Data 26 februarie 2021 17:20:40
Problema Energii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <fstream>
#include <vector>

#define INF 1e9

using namespace std;

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

int g, w, e, c, sorin=INF, lim;

vector <int> dp;

int main()
{
    in>>g>>w;
    dp.resize (w+10137, INF);
    dp[0]=0;
    for (register int i=1; i<=g; ++i)
    {
        in>>e>>c;
        lim=max (lim, e);
        for (register int j=w+e-1; j>=e; --j)
            dp[j]=min (dp[j], dp[j-e]+c);
    }
    ///for (register int i=1; i<=w+lim; ++i)
    ///    out<<dp[i]<<" ";
    for (register int i=w; i<=w+lim; ++i)
        sorin=min (sorin, dp[i]);
    if (sorin!=INF)
        out<<sorin;
    else
        out<<-1;
    return 0;
}