Cod sursa(job #437336)

Utilizator pongraczlajosLajos Pongracz pongraczlajos Data 9 aprilie 2010 16:54:07
Problema Sortare prin comparare Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.78 kb
program selection_sort;

 var n,p:longint;
     f,g:text;
     x:array of longint;

 procedure quick(bal,jobb:longint);
 var i,j,kozep,t:longint;
 begin
 i := bal;
 j := jobb;
 kozep := x[(i+j) div 2];
  while i<=j do begin
   while x[i]<kozep do i := i + 1;
   while x[j]>kozep do j := j - 1;
   if i<=j then begin
           t:=x[i];
           x[i]:=x[j];
           x[j]:=t;
           i := i + 1;
           j := j - 1;
           end;
  end;
 if bal < j then quick(bal,j);
 if i < jobb then quick(i,jobb);
 end;

Begin
assign(f,'algsort.in'); reset(f); readln(f,n);
assign(g,'algsort.out'); rewrite(g);
SetLength(x,n);
 for p := 0 to Length(x)-1 do
  read(f,x[p]);
close(f);
quick(0,n-1);
 for p := 0 to Length(x)-1 do
  write(g,x[p],' ');
close(g);
End.