Pagini recente » Cod sursa (job #2223107) | Cod sursa (job #3143570) | Cod sursa (job #1209555) | Cod sursa (job #2717106) | Cod sursa (job #71222)
Cod sursa(job #71222)
#include<stdio.h>
#include<string.h>
#define lmax 10002
long a[lmax],b[lmax],min,g,w,e,c,i,j;
int main()
{
freopen("energii.in","r",stdin);
memset(a,0,sizeof(a));
scanf("%ld%ld", &g, &w);
scanf("%ld%ld", &e, &c);
a[e]=c;
for (i=2; i<=g; i++)
{
memset(b,-1,sizeof(0));
scanf("%ld%ld", &e, &c);
for (j=1; j<=lmax-e; j++)
if (a[j]!=0)
b[j+e]=a[j]+c;
for (j=1; j<=lmax; j++)
if (a[j]!=0 && a[j]<b[j] || b[j]==-1)
b[j]=a[j];
if (c<b[e] || b[e]==-1)
b[e]=c;
memcpy(a,b,sizeof(b));
}
min=40000;
for (i=w; i<=lmax; i++)
if (a[i]!=0 && a[i]<min)
min=a[i];
fclose(stdin);
freopen("energii.out","w",stdout);
if (min!=40000)
printf("%ld",min);
else printf("-1");
fclose(stdout);
return 0;
}