Cod sursa(job #557470)

Utilizator ForkeySandoiu Fernando Forkey Data 16 martie 2011 17:57:46
Problema Ordine Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.07 kb
program sir;
var i,n:integer;
    a:char;
    ok:boolean;
    v:string;
    f,g:text;
begin
    assign(f,'ordine.in');
    reset(f);
    assign(g,'ordine.out');
    rewrite(g);
    readln(f,v);
    n:=length(v);
    ok:=true;
    while ok=true do
          begin
             ok:=false;
             for i:=1 to n-1 do
                 if ord(v[i])>ord(v[i+1]) then
                    begin
                       a:=v[i];
                       v[i]:=v[i+1];
                       v[i+1]:=a;
                       ok:=true;
                    end;
           end;
    ok:=true;
    while ok=true do
        begin
           ok:=false;
           for i:=1 to n-2 do
               if ord(v[i])=ord(v[i+1]) then
                  begin
                     a:=v[i+1];
                     v[i+1]:=v[i+2];
                     v[i+2]:=a;
                     ok:=true;
                  end;
        end;
     for i:=1 to n do
       begin
         if v[i]=' ' then delete(v,i,1);
         write(g,v[i]);
       end;
     close(f);close(g);
end.