Cod sursa(job #3163903)
Utilizator | Costea Diana Stefania Dia3141 | Data | 1 noiembrie 2023 16:54:52 |
---|---|---|---|
Problema | Energii | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.61 kb |
#include <fstream>
#include <cstring>
#include <climits>
using namespace std;
ifstream cin("energii.in");
ofstream cout("energii.out");
int n,w,i,j,e,c,d[15010],Min=INT_MAX;
int main()
{
cin>>n>>w;
memset(d,-1,sizeof(d));
d[0]=0;
for(i=1;i<=n;i++)
{
cin>>e>>c;
for(j=w-1;j>=0;j--)
if(d[j]!=-1&&(d[j+e]==-1||d[j+e]>d[j]+c))
{
d[j+e]=d[j]+c;
if(j+e>=w)
Min=min(Min,d[j+e]);
}
}
if(Min==INT_MAX)
cout<<"-1";
else
cout<<Min;
return 0;
}