Cod sursa(job #139813)
Utilizator | shady Rk shady | Data | 20 februarie 2008 18:33:29 |
---|---|---|---|
Problema | Energii | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.41 kb |
#include<stdio.h>
FILE *f=fopen("energii.in","r"),*q=fopen("energii.out","w");
long g,w,c,cost,s;
struct energ
{int x,y;} a[1001];
int main()
{fscanf(f,"%d %d",&g,&w);int i,j;
for(i=1;i<g;i++)
for(j=i+1;j<=g;j++)
if(a[i].x/a[i].y<a[j].x/a[j].y)
{a[0]=a[i];
a[i]=a[j];
a[j]=a[0];}
for(i=1;s<=w;i++)
{s+=a[i].x;
cost+=a[i].y;
}
if(s<=w)fprintf(q,"-1");
else
fprintf(q,"%d",cost);
return 0;
}