#include<bits/stdc++.h> using namespace std; int main () { set <int> P; int n,i,a; cin>>n; for(i=0;i<n;i++) { cin>>a; if(P.upper_bound(a)!=P.end()) P.erase(P.upper_bound(a)); P.insert(a); } cout<<P.size(); return 0; }