Pagini recente » Istoria paginii utilizator/malinaichim | Istoria paginii utilizator/katinka | Istoria paginii utilizator/viirall | Istoria paginii runda/r2-2023/clasament | Cod sursa (job #274329)
Cod sursa(job #274329)
#include <fstream.h>
int main()
{
int ceg[1002],eg[1002],cost[1002],n,w,i,aux,schimb,gata=0,eng=0,val=0;
float rap[1002];
ifstream in("energii.in");
ofstream out("energii.out");
in>>n>>w;
for(i=1;i<=n;i++)
{
in>>eg[i]>>cost[i];
ceg[i]=eg[i];
rap[i]=float(eg[i])/cost[i];
}
do
{
schimb=0;
for(i=1;i<n;i++)
if(rap[i]<rap[i+1])
{
aux=rap[i];
rap[i]=rap[i+1];
rap[i+1]=aux;
aux=eg[i];
eg[i]=eg[i+1];
eg[i+1]=aux;
aux=cost[i];
cost[i]=cost[i+1];
cost[i+1]=aux;
schimb=1;
}
}
while(schimb);
for(i=1;i<=n && gata==0;i++)
{
eng=eng+eg[i];
val=val+cost[i];
if(eng>=w)
gata=1;
}
if(gata==1)
out<<val;
else
out<<"-1";
return 0;
}