Cod sursa(job #1385648)

Utilizator Stefan.Andras Stefan Stefan. Data 12 martie 2015 10:26:33
Problema Sortare prin comparare Scor 40
Compilator fpc Status done
Runda Arhiva educationala Marime 1.05 kb
program sortare;
type vector = array[1..500001] of longint;
var f,g:text;
    v:vector;
    n,i:longint;
    bufin,bufout:array[1..500000] of byte;
function pivot(st,dr:longint):longint;
var i,j,di,dj,aux:longint;
begin
   i:=st;
   j:=dr;
   di:=0;
   dj:=1;
   while i < j do
      begin
      if v[i] > v[j] then
         begin
         aux:=v[i];
         v[i]:=v[j];
         v[j]:=aux;
         aux:=di;
         di:=dj;
         dj:=aux;
         end;
      i:=i+di;
      j:=j-dj;
      end;
   pivot:=i;
end;
procedure sort(st,dr:longint);
var p:longint;
begin
   if st < dr then
       begin
       p:=pivot(st,dr);
       sort(st,p-1);
       sort(p+1,dr);
       end;
end;
begin
        assign(f,'algsort.in'); reset(f);
        assign(g,'algsort.out'); rewrite(g);
        settextbuf(f,bufin); settextbuf(g,bufout);
        readln(f,n);
        for i:=1 to n do
                read(f,v[i]);
        sort(1,n);
        for i:=1 to n do
                write(g,v[i],' ');






        close(f); close(g);
end.