1 var 2 a,f:array[1..1000] of integer; 3 n,i,j,max:integer; 4 begin 5 readln(n); 6 for i:=1 to n do read(a[i]); 7 for i:=1 to n do 8 begin 9 max:=1; 10 for j:=1 to i-1 do if a[j]<a[i] then 11 if f[j]+1>max then max:=f[j]+1; 12 f[i]:=max; 13 end; 14 max:=0; 15 for i:=1 to n do if f[i]>max then max:=f[i]; 16 writeln(f[i]); 17 end.