Cod sursa(job #1766243)

Utilizator anelisemariaIonescu Anelise Maria anelisemaria Data 27 septembrie 2016 19:08:39
Problema Energii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>

using namespace std;
const int N=10005;
int e[N], c[N], s[10000001];
int main()
{
    ifstream f("energii.in");
    ofstream g("energii.out");

    int G,W,i,j,k=0;
    f>>G>>W;
    for(i=1;i<=G;i++)
        f>>e[i]>>c[i];

    for(i=1;i<=10002+W;i++)
            s[i]=10000001;
    for(i=1;i<=G;i++)
        for(j=W+10002;j>=1;j--)
    {
        if (j<W) {if(j-e[i]>=0 && s[j-e[i]]+c[i]<s[j])
                        s[j]=s[j-e[i]]+c[i];}
            else if (j-e[i]>=0 && s[j-e[i]]+c[i]<s[W])
                        s[W]=s[j-e[i]]+c[i];

    }

    if(s[W]==10000001) g<<-1;
        else g<<s[W];

    return 0;
}