Pagini recente » Cod sursa (job #2709804) | Cod sursa (job #353951) | Cod sursa (job #693875) | Cod sursa (job #1299419) | Cod sursa (job #413972)
Cod sursa(job #413972)
type
vector=array[1..50000] of longint;
var
x:vector;
n,i:longint;
f,g:text;
function partitie(var x:vector;p,q:longint):longint;
var
i,j:longint;
a,temp:longint;
begin
a:=x[p]; i:=p-1; j:=q+1;
while (i<j) do
begin
Repeat
j:=j-1
Until (x[j]<=a);
Repeat
i:=i+1;
until (x[i]>=a);
if i<j
then
begin
temp:=x[i];
x[i]:=x[j];
x[j]:=temp;
end;
end;
partitie:=j;
end;
procedure quicksort(var x:vector;p,q:longint);
var
m:longint;
begin
if p<q
then
begin
m:=partitie(x,p,q);
quicksort(x,p,m);
quicksort(x,m+1,q);
end;
end;
begin
assign(f,'algsort.in');
reset(f);
readln(f,n);
for i:=1 to n do
read(f,x[i]);
close(f);
quicksort(x,1,n);
assign(g,'algsort.out');
rewrite(g);
for i:=1 to n do
writeln(g,x[i],' ');
end.