Pagini recente » Cod sursa (job #2212892) | Cod sursa (job #345071) | Cod sursa (job #1723840) | Cod sursa (job #490849) | Cod sursa (job #1714862)
#include <iostream>
#include <stdlib.h>
#define N 17001
using namespace std;
int v[N];
int minim (int a, int b)
{
return a<b? a:b;
}
int main ()
{
int g,w,eg,cg;
for(int i=1;i<N;i++)
{
v[i]=N;
}
freopen ("energii.in" , "r", stdin);
freopen ("energii.out", "w", stdout);
scanf("%d %d", &g, &w);
for(int i=1;i<=g;i++)
{
scanf("%d %d", &eg, &cg);
for(int j=w;j>=1;j--)
{
if(v[j]!=0)
{
v[j+eg]=minim(v[j+eg], v[j]+cg);
}
}
v[eg]=minim(v[eg],cg);
}
int mini;
for(int i=w;i<=N-1;i++)
{
mini=minim(v[i], v[w]);
}
if(mini == 17000)
printf("%d\n", -1);
else
printf("%d\n", mini);
return 0;
}