Pagini recente » Cod sursa (job #186480) | Cod sursa (job #1781061) | Cod sursa (job #2733228) | Cod sursa (job #573105) | Cod sursa (job #1754405)
var a:array[1..1000000] of longint;
n:longint;
procedure init;
var i:longint;
begin
for i:=1 to n do
read(a[i]);
end;
procedure afis;
var i:longint;
begin
for i:=1 to n do write(a[i],' ');
end;
procedure sw(var a,b:longint);
var c:longint;
begin
c:=a;
a:=b;
b:=c;
end;
procedure qs(left, right: longint);
var i,j:longint; p:longint;
begin
i:=left; j:=right; p:=a[(i+j) div 2];
while i<j do
begin
while a[i]<p do i:=i+1;
while a[j]>p do j:=j-1;
if i<=j
then begin
sw(a[i], a[j]);
i:=i+1;
j:=j-1;
end;
end;
if i<right then qs(i, right);
if j>left then qs(left, j);
end;
begin
assign(input, 'algsort.in');
reset(input);
assign(output, 'algsort.out');
rewrite(output);
readln(n);
init;
qs(1,n);
afis;
end.