长度1000允许二次DP;标程用尾数组二分,作优化路线关联,区分严格上升与非降。
#include <bits/stdc++.h> using namespace std; int main(){int n,x;cin>>n;vector<int>t;while(n--){cin>>x;auto p=lower_bound(t.begin(),t.end(),x);if(p==t.end())t.push_back(x);else *p=x;}cout<<t.size()<<'\n';}
注册一个 GeekPi OJ 通用账户,您就可以在我们提供的所有在线评测服务上提交代码、参与讨论。
使用您的 GeekPi OJ 通用账户