Pagini recente » Cod sursa (job #182497) | Cod sursa (job #21214) | Cod sursa (job #1662261) | Cod sursa (job #1301106) | Cod sursa (job #368416)
Cod sursa(job #368416)
#include<stdio.h>
int b[5012000],N,S,G,ifin=99999999,W,v[1011],l[1011],max;
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d%d",&N,&S);
for(int i=1;i<=N;++i)
{
scanf("%d%d",&v[i],&l[i]);
}
for(int i=1;i<=15000;++i)
{
b[i]=9999999;
}
max=0;
for(int i=1;i<=N;++i)
{
for(int j=max;j>=0;--j)
{
if(b[j]!=9999999)
{
if(b[j+v[i]]>b[j]+l[i])
b[j+v[i]]=b[j]+l[i];
if(j+v[i]>max)
max=j+v[i];
}
}
}
for(int i=S;i<=max;++i)
{
if(b[i]<ifin)
ifin=b[i];
}
if(ifin!=99999999)
printf("%d\n",ifin);
else printf("-1");
return 0;
}