Pagini recente » Cod sursa (job #532938) | Cod sursa (job #3140232) | Cod sursa (job #965840) | Cod sursa (job #1983492) | Cod sursa (job #333784)
Cod sursa(job #333784)
#include<stdio.h>
int main(){
int i,j;
int W,n,w[1001],c[1001],v[5001]={0};
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d%d",&n,&W);
for(i=1;i<=n;i++)
scanf("%d%d",&w[i],&c[i]);
v[0]=1;
v[W]=0x3f3f3f3f;
for(i=1;i<=n;i++)
for(j=W-1;j>=0;j--)
if(v[j]){
if(j+w[i]>=W && v[j]+c[i]<v[W])
v[W]=v[j]+c[i];
else
if(w[j+w[i]]){
if(v[j]+c[i]<v[j+w[i]])
v[j+w[i]]=v[j]+c[i];
}
else
v[j+w[i]]=v[j]+c[i];
}
if(v[W]!=0x3f3f3f3f)
printf("%d",v[W]-1);
else
printf("-1");
return 0;
}