Cod sursa(job #3165950)

Utilizator Cazacu2006RazvanRazvan Cazacu Cazacu2006Razvan Data 7 noiembrie 2023 11:01:55
Problema Energii Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <fstream>
#include <algorithm>
#include <climits>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int n,e,k,d[5001];
struct numar
{
    int e,c,r;
}v[1001];
int cmp(numar a,numar b)
{
    if(a.e==b.e)
        return a.c<b.c;
    return a.e<b.e;
}
int main()
{
   fin>>n>>e;
   for(int i=1;i<=n;i++)
   {
       fin>>v[i].e>>v[i].c;
   }
   sort(v+1,v+n+1,cmp);
   for(int i=1;i<=e;i++)
    d[i]=INT_MAX-100001;
   for(int i=1;i<=n;i++)
   {
       for(int j=e;j>=v[i].e;j--)
       {
           d[j]=min(d[j],d[j-v[i].e]+v[i].c);
       }


   }
   if(d[e]==INT_MAX-100001)
    fout<<-1;
   else
   fout<<d[e];


    return 0;
}