#include<iostream>
#include<algorithm>
using namespace std;
const int N = 1010, INF = 1e9;
int n;
int a[N];
int f[N];
int main()
{
cin >> n;
for (int i = 1; i <= n; i ++) cin >> a[i];
for (int i = 1; i <= n; i ++) {
f[i] = 1;
for (int j = 1; j <= i - 1; j ++)
if (a[j] < a[i])
f[i] = max(f[i], f[j] + 1);
}
int m = 1;
for (int i = 1; i <= n; i ++) m = max(m, f[i]);
cout << m;
return 0;
}