Pagini recente » Cod sursa (job #962240) | Cod sursa (job #3168365) | Cod sursa (job #139000) | Cod sursa (job #779341) | Cod sursa (job #548491)
Cod sursa(job #548491)
#include<stdio.h>
using namespace std;
FILE*in=fopen("energii.in","r");
FILE*out=fopen("energii.out","w");
int g,w,i,a,b,s,j,m;
long double e;
typedef struct generator
{
int a; //cant
int b;//pret
long double e;
};
generator v[1003];
int main()
{
fscanf(in,"%d%d",&g,&w);
for(i=0;i<g;i++)
{
fscanf(in,"%d%d",&v[i].a,&v[i].b);
v[i].e=(long double)v[i].a/v[i].b;
}
for(i=0;i<g-1;i++)
for(j=i+1;j<g;j++)
if(v[i].e<v[j].e)
{
v[1003]=v[i];
v[i]=v[j];
v[j]=v[1003];
}
i=0;
while(w>0 && i<g)
{
w=w-v[i].a;
s=s+v[i].b;
i++;
}
if(w<=0)
fprintf(out,"%d",s);
else
fprintf(out,"-1");
fclose(in);
fclose(out);
return 0;
}