Pagini recente » Cod sursa (job #158402) | Cod sursa (job #453611) | Cod sursa (job #1554023) | Cod sursa (job #2545917) | Cod sursa (job #41213)
Cod sursa(job #41213)
#include <stdio.h>
struct generator
{
int e,c;
};
int v[10000];
int main()
{
int w,g,c,i,e,j,max=0,min;
v[0]=1;
FILE *in=fopen("energii.in","r");
fscanf(in,"%d%d",&g,&w);
for (i=0; i<g; i++)
{
fscanf(in,"%d%d",&e,&c);
max+=e;
for (j=max; j>=0; j--)
if (v[j] && (v[j]+c<v[j+e] || v[j+e]==0))
v[j+e]=v[j]+c;
}
fclose(in);
FILE *out=fopen("energii.out","w");
if (max<w)
fprintf(out,"-1\n");
else
{
min=-1;
for (i=max; i>=w; i--)
if ((v[i]<min || min==-1) && v[i] )
min=v[i];
fprintf(out,"%d\n",min-1);
}
fclose(out);
return 0;
}