Cod sursa(job #1052707)

Utilizator Mihai_ChihaiMihai Chihai Mihai_Chihai Data 11 decembrie 2013 18:38:06
Problema Subsir crescator maximal Scor 70
Compilator fpc Status done
Runda Arhiva educationala Marime 0.95 kb
program scmax;
  var a,sol,drum:array[1..100000] of longint;
  n,i,j,max,h:longint;

procedure scrie(h:longint);
begin
   if h>0 then begin
     scrie(drum[h]);
     write(a[h],' ');
     end;


end;
begin
  assign(input,'scmax.in');
  reset(input);
  assign(output,'scmax.out');
  rewrite(output);
  readln(n);
  for i:=1 to n do read(a[i]);
  sol[1]:=1;
  for i:=2 to n do begin
    max:=0; drum[i]:=0;
    for j:=1 to i  do
      if (a[i]>a[j])  and (sol[j]>max)  then begin
                                              max:=sol[j];
                                              drum[i]:=j;
                                              end;
      sol[i]:=max+1;
                       end;
    max:=sol[1];   h:=1;
    for i:=1 to n do if sol[i]>max then begin max:=sol[i]; h:=i; end;
    writeln(max);
    scrie(h);
    {while h <>0 do begin
      write(a[h], ' ');
       h:=drum[h];
       end;  }
    close(output);
  end.