#include<stdio.h>
#include<stdlib.h>
#include<iostream>
using namespace std;
int dp[20];
int max(int a,int b){
return a>b?a:b;
}
int mostxulie(int nums[],int n){
for(int i=0;i<n;i++){
int tmax=1;
for(int j=0;j<i;j++){
if(nums[j]<nums[i]){
tmax=max(tmax,dp[j]+1);
}
}
dp[i]=tmax;
}
int ans=1;
for(int i=0;i<n;i++){
ans=max(ans,dp[i]);
}
return ans;
}
void main(){
int n,num[20];
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%d",&num[i]);
}
int ans=mostxulie(num,n);
printf("%d\n",ans);
}