Pagini recente » Cod sursa (job #2709280) | Cod sursa (job #770205) | Cod sursa (job #2048098) | Cod sursa (job #1655124) | Cod sursa (job #407144)
Cod sursa(job #407144)
#include <stdio.h>
#define INF 10002
int v[5002];
int e[1002];
int c[1002];
int n,w,i,j;
int main(){
FILE *f = fopen("energii.in","r");
fscanf(f,"%d %d",&n,&w);
for (i=1;i<=n;i++)
fscanf(f,"%d %d",&e[i],&c[i]);
fclose(f);
v[0] = 0;
for (i=1;i<=w;i++)
v[i] = INF;
for (i=1;i<=n;i++) {
for (j = w;j>=0;j--) {
if (v[j]!=INF ) {
if (j+e[i]<w) {
if (v[j+e[i]] > v[j]+c[i])
v[j+e[i]] = v[j]+c[i];
} else {
if (v[w] > v[j]+c[i])
v[w] = v[j]+c[i];
}
}
}
}
FILE *g = fopen("energii.out","w");
if (v[w] ==INF)
fprintf(g,"-1");
else
fprintf(g,"%d",v[w]);
fclose(g);
}