#include <iostream>
#include <fstream>
#include <stdio.h>
using namespace std;
const int CMAX = 1e5+15;
int v[CMAX] , n , val[CMAX] , maxim = 1;
int main()
{
freopen ("scmax.in","r",stdin);
freopen ("scmax.out","w",stdout);
scanf("%d",&n);
for(int i=1;i<=n;i++)
scanf("%d",&v[i]);
val[n] = 1;
for(int i=n;i>=1;i--)
{
maxim = 0;
for(int j=i+1;j<=n;j++)
if(maxim<=val[i]&&v[i]<=v[j])
{
maxim = val[j];
}
val[i] = maxim+1;
}
maxim = val[1];
for(int i=2;i<=n;i++)
{
if(maxim<=val[i])
{
maxim = val[i];
}
}
printf("%d",maxim);
return 0;
}