#include <bits/stdc++.h>
#define int long long
#define pii pair<int,int>
#define pll pair<ll,ll>
#define pb push_back
#define ff first
#define ss second
using namespace std;
int n,m,k,i,j,ans,dp[400005],a[400005],b[400005],c[400005],l,r;
vector<pair<int,pii> > v;
vector<int> g[400005];
signed main() {
cin>>n>>m;
for(k=1; k<=n; k++)cin>>a[k];
vector<int> d;
for(k=1; k<=n; k++){
auto t=lower_bound(d.begin(),d.end(),a[k]);
if(t==d.end())d.pb(a[k]);
else *t=a[k];
}
cout<<d.size();
return 0;
}
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |