Pagini recente » Cod sursa (job #2058561) | Cod sursa (job #2046491) | Cod sursa (job #125957) | Cod sursa (job #1907151) | Cod sursa (job #244300)
Cod sursa(job #244300)
type tip=0..2147483648;
var v:array[1..500005] of tip;
n,i:longint;
procedure qsort(s,d:longint);
var a,b,t,ia:tip;
begin
a:=s; b:=d;
repeat
while (v[a]<v[b]) do dec(b);
t:=v[a]; v[a]:=v[b]; v[b]:=t;
ia:=1; a:=a+1;
if a<b then
begin
while v[a]<v[b] do inc(a);
t:=v[a]; v[a]:=v[b]; v[b]:=t;
b:=b-1; ia:=0;
end;
until b<=a;
if s<a-ia then qsort(s,a-ia);
if d>a-ia+1 then qsort(a-ia+1,d);
end;
begin
assign(input,'algsort.in');
reset(input);
assign(output,'algsort.out');
rewrite(output);
readln(n);
for i:=1 to n do read(v[i]);
qsort(1,n);
for i:=1 to n do write(v[i],' ');
close(output);
close(input);
end.