Pagini recente » Cod sursa (job #1701698) | Cod sursa (job #1933352) | Cod sursa (job #3005165) | Cod sursa (job #1577658) | Cod sursa (job #79461)
Cod sursa(job #79461)
#include<stdio.h>
int g,w,e[1001],c[1001],i,j,l,s;
long long ct,wt;
double ef[1001],x;
FILE *f,*d;
int main()
{f=fopen("energii.in","r");
d=fopen("energii.out","w");
fscanf(f,"%d %d",&g,&w);
for(i=1;i<=g;i++)
{fscanf(f,"%d %d",&e[i],&c[i]);ct+=c[i];wt+=e[i];
ef[i]=((float)e[i])/((float)c[i]);}
for(i=1;i<=g;i++)
for(j=i+1;j<=g;j++)
if(ef[j]<ef[i])
{l=c[i];c[i]=c[j];c[j]=l;
s=e[i];e[i]=e[j];e[j]=s;x=ef[i];ef[i]=ef[j];ef[j]=x;}
if(wt<w)
fprintf(d,"-1");
else
{for(i=1;i<=g;i++)
if(wt-e[i]>=w)
{ct-=c[i];
wt-=e[i];}
fprintf(d,"%lld\n",ct);}
fclose(f);
fclose(d);
return 0;}