Pagini recente » Cod sursa (job #2645980) | Cod sursa (job #2721698) | Cod sursa (job #3219831) | Cod sursa (job #791469) | Cod sursa (job #253824)
Cod sursa(job #253824)
#include<stdio.h>
FILE *f1,*f2;
long a,b,cc,i,j,k,n,w,g,et[1024][5005],e[1024],c[1024];
int main(){
f1=fopen("energii.in","r");
f2=fopen("energii.out","w");
fscanf(f1,"%ld%ld",&g,&w);
for(i=1;i<=g;i++){
fscanf(f1,"%ld%ld",&e[i],&c[i]);
et[0][e[i]]=1;
et[1][e[i]]=c[i];
et[2][e[i]]=i;
}
for(i=3;i<=w;i++){
for(j=1;j<=g;j++){
if(i-e[j]>0){
if(et[0][i-e[j]]){
cc=et[1][i-e[j]]+c[j];
if(cc<et[1][i]||!et[0][i]){
et[0][i]=1;
et[1][i]=cc;
et[2][i]=j;
k=2;
while(et[k][i-e[j]]){
et[k+1][i]=et[k][i-e[j]];
k++;
}
}
}
}
}
}
fprintf(f2,"%ld\n",et[1][w]);
return 0;
}