Pagini recente » Cod sursa (job #1924230) | Cod sursa (job #1192510) | Cod sursa (job #480925) | Cod sursa (job #2608270) | Cod sursa (job #923685)
Cod sursa(job #923685)
var f,g:text;
v:array[-1..500000] of longint;
n,i,j,x:longint;
bufin,bufout:array[1..65000] of byte;
function pivot(st,dr:longint):longint;
var aux,i,j:longint;
begin
i:=0;
j:=1;
while st<dr do begin
if v[st]>v[dr] then begin
aux:=v[st];
v[st]:=v[dr];
v[dr]:=aux;
aux:=i;
i:=j;
j:=aux;
end;
st:=st+i;
dr:=dr-j;
end;
pivot:=st;
end;
procedure qsort(st,dr:longint);
var p:longint;
begin
if st<dr then begin
p:=pivot(st,dr);
qsort(st,p-1);
qsort(p+1,dr);
end;
end;
begin
assign(f,'algsort.in');
assign(g,'algsort.out');
reset(f);
rewrite(g);
settextbuf(f,bufin);
settextbuf(g,bufout);
readln(f,n);
for i:=1 to n do read(f,v[i]);
qsort(1,n);
for i:=1 to n do write(g,v[i],' ');
close(g);
end.