Cod sursa(job #1002793)

Utilizator wollyFusy Wool wolly Data 28 septembrie 2013 20:26:28
Problema Energii Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.77 kb
type tabval=array[1..1100,1..1100] of longint;
	tabgred=array[1..1100] of real;
var a,b:text;
	t:tabval;
	u:tabgred;
	i,n,sum,sy,sz,sx:longint;
	
procedure qs(s,f:longint);
var x,i,j,m:longint;
	y,p:real;
begin
i:=s;
j:=f;
m:=(s+f) div 2;
p:=u[m];
repeat
begin
while u[i]<p do i:=i+1;
while u[j]>p do j:=j-1;

if (i<=j) then
begin
x:=t[i,1];
t[i,1]:=t[j,1];
t[j,1]:=x;
x:=t[i,2];
t[i,2]:=t[j,2];
t[j,2]:=x;
y:=u[i];
u[i]:=u[j];
u[j]:=y;
i:=i+1;
j:=j-1;
end;
end
until (i>j);

if j-s>0 then qs(s,j);
if f-i>0 then qs(i,f);

end;	
	
begin
assign(a,'energii.in');
reset(a);
assign(b,'energii.out');
rewrite(b);

read(a,n,sum);
for i:=1 to n do
begin
read(a,t[i,1],t[i,2]);
u[i]:=t[i,2]/t[i,1];
end;
qs(1,n);


close(a);
close(b);
end.