Pagini recente » Cod sursa (job #664250) | Cod sursa (job #691819) | Cod sursa (job #3040170) | Cod sursa (job #2267657) | Cod sursa (job #1199826)
type vector=array[1..50] of longint;
var v,w:vector; nr,n,min,i:longint;
f:text;
procedure afisare(n:integer; var v:vector);
var f:text;
begin
if n>0 then
begin
afisare((n-1),v);
write(f,v[n],' ');
close(f);
end;end;
procedure pozitionare(var v:vector;n,p,u:integer; var poz:integer);
var i,j,aux,x,k:integer;
begin
i:=p;
j:=u; x:=0;
while i<j do
begin nr:=nr+1;
if v[i]>v[j] then
begin aux:=v[i];
v[i]:=v[j];
v[j]:=aux;
x:=x+1;
end;
if x mod 2=0 then j:=j-1
else i:=i+1;
end;
poz:=i;
end;
procedure quick_sort(var v:vector;p,u:integer);
var poz:integer;
begin
if p<u then
begin
pozitionare(v,n,p,u,poz);
quick_sort(v,p,poz-1);
quick_sort(v,poz+1,u);
end;
end;
begin
assign(f,'algsort.in'); reset(f);
readln(f,n);
for i:=1 to n do
read(f,v[i]);
quick_sort(v,1,n);
afisare(n,v);
close(f);
end.