Cod sursa(job #865204)

Utilizator IoanaDanielaRomcea Ioana Daniela IoanaDaniela Data 26 ianuarie 2013 11:11:58
Problema Subsir crescator maximal Scor 20
Compilator fpc Status done
Runda Arhiva educationala Marime 0.74 kb
var a,l:array[1..100000] of longint;
    n,max,k,i:longint;
    f,g:text;

begin
 assign(f,'scmax.in');reset(f);
 assign(g,'scmax.out');rewrite(g);
 readln(f,n);
 for i:=1 to n do
  read(f,a[i]);
 l[n]:=1;
 for i:=n-1 downto 1 do
  begin
   l[i]:=1;
   k:=i;
   repeat
    k:=1+k;
   until (a[i]<a[k]) or (k>=n);
   if a[i]<a[k] then l[i]:=l[k]+1;
  end;
 max:=0;
 k:=0;
 for i:=1 to n do
  if l[i]>max then begin
                    max:=l[i];
                    k:=i;
                   end;
 writeln(g,max);
 max:=a[k];
 write(g,a[k],' ');
 for i:=k+1 to n do
   if a[i]>max then begin
                     write(g,a[i],' ');
                     max:=a[i];
                    end;
 close(f);
 close(g);
end.