#include <bits/stdc++.h>
using namespace std;
int main() {
int N, D; cin >> N >> D;
vector<int> a(N); for(int &b : a) cin >> b;
vector<int> lis;
for(int i = 0; i < N; ++i) {
if(lis.empty() || a[i] > lis.back()) lis.push_back(a[i]);
else {
auto it = lower_bound(lis.begin(), lis.end(), a[i]) - lis.begin();
lis[it] = a[i];
}
}
cout << (int)lis.size() << "\n";
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |