#include<stdio.h>
#define max(a,b) (a)>(b)?a:b
#define N 100000
int n,l[N],i,j,dp[N],r=0;
int main()
{
	scanf("%d",&n);
	for(i=0;i<n;i++)
		scanf("%d",&l[i]);
	for(i=0;i<n;i++)
		for(dp[i]=1,j=0;j<i;r=max(r,dp[i]),j++)
			if(l[j]<l[i])
				dp[i]=max(dp[i],dp[j]+1);
	printf("%d\n",r);
	return 0;
}