Pagini recente » Cod sursa (job #986091) | Cod sursa (job #2862640) | Cod sursa (job #2150503) | Cod sursa (job #1476698) | Cod sursa (job #138799)
Cod sursa(job #138799)
# include <stdio.h>
# include <stdlib.h>
# define MAX 1000
int gen[MAX];
int G,W;
int E[MAX],C[MAX];
float rap[MAX];
int main(){
FILE *f=fopen("energii.in","r");
fscanf(f,"%d",&G);
fscanf(f,"%d",&W);
int i,j;
for (i=0;i<G;i++){
fscanf(f,"%d %d",&E[i],&C[i]);
}
fclose(f);
float aux;
int aux1;
for (i=0;i<G;i++)
rap[i]=(float)C[i]/E[i];
for (i=0;i<G-1;i++)
for (j=i+1;j<G;j++)
if(rap[i]>rap[j]){
aux=rap[i];
rap[i]=rap[j];
rap[j]=aux;
aux1=E[i];
E[i]=E[j];
E[j]=aux1;
aux1=C[i];
C[i]=C[j];
C[j]=aux1;
}
i=0;
int sum=0;
while(W>0){
W-=E[i];
sum+=C[i];
i++;
}
if(W>0)
sum=-1;
FILE *out=fopen("energii.out","w");
fprintf(out,"%d\n",sum);
fclose(out);
return 0;
}