Pagini recente » Cod sursa (job #3137866) | Cod sursa (job #2302249) | Cod sursa (job #2440397) | Cod sursa (job #205710) | Cod sursa (job #1563992)
#include <stdio.h>
#define INF 50000010
int v[5010],c[1010],e[1010];
int main ()
{
FILE *fin,*fout;
int n,i,j,g,k;
fin=fopen("energii.in","r");
fout=fopen("energii.out","w");
fscanf(fin,"%d%d", &n, &g);
for (i=1;i<=n;i++)
fscanf(fin,"%d%d", &e[i], &c[i]);
for (i=1;i<=g;i++)
v[i]=INF;
for (i=1;i<=n;i++)
for (j=g-1;j>=0;j--)
if (v[j]!=INF) {
k=j+e[i];
if (k>g)
k=g;
if (v[k]>v[j]+c[i])
v[k]=v[j]+c[i];
}
if (v[g]==INF)
fprintf(fout,"-1");
else
fprintf(fout,"%d", v[g]);
return 0;
}