Cod sursa(job #21257)

Utilizator pandaemonAndrei Popescu pandaemon Data 23 februarie 2007 01:34:48
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <fstream.h>

fstream f("d://energii.in",ios::in),g("d://energii.out",ios::out);

int n,cant,**p;


init()
{
f>>n; f>>cant;
p=new int*[n]; 
for(int i=0;i<n;i++)
{p[i]=new int[2]; f>>p[i][0]; f>>p[i][1]; }
}

ordonare()
{int adevarat,aux,aux2;
do{
adevarat=1;
for(int i=0;i<n-1;i++)
if( float(p[i][1] / p[i][2]) > float(p[i+1][1] / p[i+1][2]) )
{adevarat=0;
aux=p[i][0]; aux2=p[i][0];
p[i][0]=p[i+1][0]; p[i][1]=p[i+1][1];
p[i+1][1]=aux; p[i+1][1]=aux2;}
} while(adevarat==0);
}

main()
{int cost=0,i=0;
init();
ordonare();
while(cant)
{cant-=p[i][2];
 cost+=p[i][1]; i++;
}
delete p;
g<<cost;
}