Pagini recente » Cod sursa (job #1797127) | Cod sursa (job #3287752) | Cod sursa (job #763424) | Cod sursa (job #2986080) | Cod sursa (job #676477)
Cod sursa(job #676477)
#include <cstdio>
const int MaxN=5005;
const int MAX=1<<30;
int W,CGi,EGi,G,sol,cost[MaxN];
int minim(int a, int b)
{
if(a>b) return b;
return a;
}
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
for(register int i=0;i<MaxN;++i)
{
cost[i]=MAX;
}
scanf("%d",&G);
scanf("%d",&W);
cost[0]=1;
for(register int i=0;i<G;++i)
{
//fin>>EGi>>CGi;
scanf("%d %d",&EGi,&CGi);
for(register int j=MaxN-1;j>=0;--j)
{
if(cost[j]!=MAX)
{
int pos=j+EGi;
if(pos>W)
{
pos=W;
}
cost[pos]=minim(cost[pos],cost[j]+CGi);
}
}
}
if(cost[W]==MAX)
{
cost[W]=0;
}
printf("%d",cost[W]-1);
return 0;
}