#include <iostream>
using namespace std;
int u[30003], a[30003];
int main()
{
int n, i, j;
int max;
while( cin >> n )
{
for(i = 0; i < n; i++)
{
cin >> a[i];
}
u[0] = 1;
for(i = 1; i < n; i++)
{
u[i] = 1;
for(j = 0; j < i; j++)
{
if( a[j] < a[i] && u[j] + 1 > u[i])
{
u[i] = u[j] + 1;
}
}
}
max = 0;
for(i = 0; i < n; i++)
{
if( max < u[i])
{
max = u[i];
}
}
cout << max << endl;
}
return 0;
}