Cod sursa(job #2551407)

Utilizator mihaistamatescuMihai Stamatescu mihaistamatescu Data 19 februarie 2020 20:04:34
Problema Energii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <fstream>
using namespace std;
int g,w,i,j,k,d[5010],cg[1010],eg[1010];
int main () {
    ifstream fin("energii.in");
    ofstream fout("energii.out");
    fin>>g>>w;
    for (i=1;i<=g;i++) {
        fin>>eg[i]>>cg[i];
    }
    for (i=1;i<=w;i++){
        d[i]=1000000000;
    }
    for (i=1;i<=g;i++){
        for (j=w-1;j>=0;j--){
            if (d[j]!=1000000000){
                k=(eg[i]+j<=w)?eg[i]+j:w;
                if (d[j]+cg[i]<d[k]){
                    d[k]=d[j]+cg[i];
                }
            }
        }
    }
    if (d[w]==1000000000){
        fout<<-1;
    }
    else{
        fout<<d[w];
    }
    return 0;
}