#include #include using namespace std; int main() { int n; cin >> n; vector elementi; for(int i = 0; i < n; i++) { int x; cin >> x; elementi.push_back(x); } vector kuli; for(int i = 0; i < n; i++) { int indeks = lower_bound(kuli.begin(), kuli.end(), elementi[i] + 1) - kuli.begin(); if(indeks >= 0 and indeks < kuli.size()) { kuli[indeks] = elementi[i]; } else { kuli.push_back(elementi[i]); } } cout << kuli.size() << endl; return 0; } // 3 8 2 1 5 // kuli: 3 8