Pagini recente » Cod sursa (job #2027920) | Cod sursa (job #753541) | Cod sursa (job #518823) | Cod sursa (job #1179799) | Cod sursa (job #373113)
Cod sursa(job #373113)
#include <stdio.h>
long v[5001],g,w,i,j,e,c,cnt;
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%ld%ld",&g,&w);
for (i=1;i<g+1;i++)
{
scanf("%ld%ld",&e,&c);
if (c==0) cnt+=e;
for (j=w;j>-1;j--)
{
if (((v[j]!=0)||(j==0))&&((v[e+j]==0)||(v[e+j]>v[j]+c)))
if (e+j<w) v[e+j]=v[j]+c;
else if ((v[w]>v[j]+c)||(v[w]==0)) v[w]=v[j]+c;
}
}
if (v[w]==0) v[w]=-1;
if (cnt>=w) v[w]=0;
printf("%ld",v[w]);
return 0;
}