Cod sursa(job #1507192)

Utilizator ili226Vlad Ilie ili226 Data 21 octombrie 2015 15:39:34
Problema Subsir crescator maximal Scor 70
Compilator fpc Status done
Runda Arhiva educationala Marime 0.67 kb
var p,n,i,j,max,m,jm:longint;
    a,b,din,sol:array[1..100003]of longint;
    f:text;
begin
max:=0;
assign(f,'scmax.in');
reset(f);
readln(f,n);
din[1]:=1;b[1]:=0;
max:=1;read(f,a[1]);
for i:=2 to n do
 begin
  read(f,a[i]);
  m:=0;jm:=0;
  for j:=i-1 downto 1 do
   if a[i]>a[j] then
    if din[j]>m then
     begin
      m:=din[j];
      jm:=j
     end;
  din[i]:=m+1;
  b[i]:=jm;
  if din[i]>max then
   begin max:=din[i];
         p:=i
   end;
 end;
close(f);
assign(f,'scmax.out');
rewrite(f);
writeln(f,max);
j:=0;
while p<>0 do
 begin
  inc(j);
  sol[j]:=a[p];
  p:=b[p]
 end;
for i:=j downto 1 do
 write(f,sol[i],' ');
close(f);
end.