#include <iostream>
#include<stdio.h>
int v[100001], s[100001];
using namespace std;
int main() {
FILE *fin, *fout;
int max, i, n, j, x, elem, s1, s2, maxim;
fin=fopen("scmax.in", "r");
fout=fopen("scmax.out", "w");
fscanf( fin, "%d", &n);
for(i=1;i<=n;i++) {
fscanf( fin, "%d", &v[i]);
maxim=0;
for(j=1;j<=i;j++) {
if(v[j]<v[i]) {
if(s[j]>maxim) {
maxim=s[j];
}
}
}
s[i]=maxim+1;
}
max=0;
for(i=1;i<=n;i++) {
if(s[i]>max) {
max=s[i];
}
}
fprintf( fout, "%d\n0", max);
fclose( fin );
fclose( fout );
return 0;
}