Pagini recente » Cod sursa (job #591416) | Cod sursa (job #79194) | Cod sursa (job #2539183) | Cod sursa (job #1093243) | Cod sursa (job #1671972)
#include<cstdio>
#include<algorithm>
using namespace std;
int suma[5010],n,i,j,w,sm=0,cant,cost;
FILE *in,*out;
int main ()
{
in=fopen("energii.in","r");
out=fopen("energii.out","w");
fscanf(in,"%d%d",&n,&w);
for(i=1;i<=w+1;i++)
suma[i]=10000001;
for(i=1;i<=n;i++)
{
fscanf(in,"%d %d",&cant,&cost);
for(j=w-cant;j>=0;j--)
if(suma[j+cant]>suma[j]+cost)
suma[j+cant]=suma[j]+cost;
for(j=cant;j>=0;j--)
if(suma[j]>cost)
suma[j]=cost;
}
if(suma[w]==10000001)
suma[w]=-1;
fprintf(out,"%d",suma[w]);
return 0;
}