//f[i]:长为i的LIS末位的最小值
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
int f[1000010];
int main(){
memset(f,0x3f,sizeof(f));
int n; cin>>n;
for(int i = 1; i <= n; i++){
int x; cin>>x;
*lower_bound(f+1,f+n+1,x) = x;
}
cout<<lower_bound(f+1,f+n+1,f[0])-f-1<<"\n";
return 0;
}
【codevs3955】最长严格上升子序列(加强版)
原创
©著作权归作者所有:来自51CTO博客作者小哈里1139的原创作品,请联系作者获取转载授权,否则将追究法律责任
![](https://ucenter.51cto.com/images/noavatar_middle.gif)
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
子比主题7.7免授权开心版下载 附教程
子比主题7.7免授权开心版下载 附教程
wordpress 子比主题 -
noip2004 合唱队形 (最长严格上升子序列+最长严格下降子序列)
P1098合唱队形Accepted标签:动态规划 LISNOIP提高组2004描述N位同学站成一排,音乐老师要请其中的(N-K)
noip2004 最长上升子序列 最长下降子序列 i++ #include -
【CODEVS 2185】最长公共上升子序列【DP】
题目大意:题目链接:http://codev...
i++ #include 时间复杂度