Pagini recente » Cod sursa (job #38543) | Cod sursa (job #2415299) | Cod sursa (job #943037) | Cod sursa (job #1587580) | Cod sursa (job #178548)
Cod sursa(job #178548)
#include <stdio.h>
int g,w,eg[1001],cg[1001],a[20000],min;
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d\n%d\n",&g,&w);
int i,j;
for (i=1;i<=12000;i++)
a[i]=-1;
for (i=0;i<g;i++)
{
scanf("%d %d\n",&eg[i],&cg[i]);
for (j=w;j>0;j--)
if (a[j]>=0&&(a[j+eg[i]]>a[j]+cg[i]||a[j+eg[i]]==-1))
a[j+eg[i]]=a[j]+cg[i];
if (a[eg[i]]>cg[i]||a[eg[i]]==-1)
a[eg[i]]=cg[i];
}
for (i=w;!a[i];i++);
min=a[i];
for (;i<=12000;i++)
if (a[i]>=0&&a[i]<min)
min=a[i];
printf("%d\n",min);
return 0;
}