Cod sursa(job #2548470)

Utilizator BlueLuca888Girbovan Robert Luca BlueLuca888 Data 16 februarie 2020 18:26:51
Problema Energii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <iostream>
#include <fstream>
#define INF 999999999

using namespace std;

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

int n, w, ecrt;
int d[5005], e[1005], c[1005];

int main (){
     fin>>n>>w;
     for(int i=1; i<=n; i++){
          fin>>e[i];
          fin>>c[i];
     }

     for(int i=1; i<=w; i++)
          d[i]=INF;

     for(int i=1; i<=n; i++)
          for(int j=w-1; j>=0; j--)
               if(d[j] != INF){
                    ecrt    = min(j + e[i], w);
                    d[ecrt] = min(d[ecrt], d[j] + c[i]);
               }
     if(d[w] == INF)
          fout<<-1;
     else
          fout<<d[w];

     return 0;
}