Cod sursa(job #2254468)

Utilizator BGondaGonda George Luis Bogdan BGonda Data 5 octombrie 2018 14:15:02
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <fstream>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int  v[5002];
const int inf=0x3f3f3f3f;
int n,G,cost,cant;
int main()
{
    fin>>n>>G;

    for(int i=1;i<=5001;i++)
        v[i]=inf;
    v[0]=0;
    for(int i=1;i<=n;i++)
    {
        fin>>cant>>cost;
        for(int j = G-cant; j >= 0; --j)
            if(v[j+cant]>v[j]+cost && v[j]!=inf)
                v[j+cant]=v[j]+cost;
    }
      if(v[G]!=inf)
      int mi=inf + 1;
  for(int i=5001;i>=G;i--)
  if(mi>v[i])
  mi=v[i];
  if(mi==inf)
    fout<<"-1";
  else
    fout<<mi;
    return 0;
}