Pagini recente » Cod sursa (job #1023668) | Cod sursa (job #1857939) | Cod sursa (job #557803) | Cod sursa (job #2778217) | Cod sursa (job #1809339)
#include <cstdio>
using namespace std;
FILE*fin,*fout;
int g,w,v[2][10001],s,cost,ei,ci,i,j,v2,cmin=10000000;
int main()
{
fin=fopen("energii.in","r");
fout=fopen("energii.out","w");
fscanf(fin,"%d",&g);
fscanf(fin,"%d",&w);
for(j=1;j<w+1;j++)
v[0][j]=1000000;
for(i=1;i<=g;i++)
{
fscanf(fin,"%d%d",&ei,&ci);
for(j=1;j<=w;j++)
{
if(j-ei<=0)
{
if(v[(i-1)%2][j]>ci)
v[i%2][j]=ci;
}
else
{
if(v[(i-1)%2][j]>ci+v[(i-1)%2][j-ei] )
v[i%2][j]=ci+v[(i-1)%2][j-ei];
}
}
}
if(v[g%2][w]==0)
fprintf(fout,"-1");
else
fprintf(fout,"%d",v[g%2][w]);
return 0;
}