博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[CODEVS] 3955 最长严格上升子序列(加强版)
阅读量:6060 次
发布时间:2019-06-20

本文共 774 字,大约阅读时间需要 2 分钟。

题目描述 Description给一个数组a1, a2 ... an,找到最长的上升降子序列ab1
< ..
<..bk。输出长度即可。输入描述 Input Description第一行,一个整数N。第二行 ,N个整数(N < = 1000000)输出描述 Output Description输出K的极大值,即最长不下降子序列的长度样例输入 Sample Input59 3 6 2 7样例输出 Sample Output3数据范围及提示 Data Size & Hintn<=1000000为了方便大家调试,数据名称已被修改——THREE

朴素做法O(n^2)

注意的是,答案是f的最大值。

//Writer:GhostCai && His Yellow Duck#include
#define MAXN 1000005using namespace std;int f[MAXN],a[MAXN];int n;int main(){ cin>>n; for(int i=1;i<=n;i++) cin>>a[i]; for(int i=1;i<=n;i++){ f[i]=1; for(int j=1;j
f[i]) f[i]=f[j]+1; } } int ans=0; for(int i=1;i<=n;i++) ans=max(ans,f[i]); cout<
<

转载于:https://www.cnblogs.com/ghostcai/p/9247509.html

你可能感兴趣的文章
hadoop 之分布式安装
查看>>
使用ansible工具部署ceph
查看>>
SQL语句常见优化十大案例
查看>>
linux系列博文---->深入理解linux启动运行原理(一)
查看>>
Android反编译(一) 之反编译JAVA源码
查看>>
结合当前公司发展情况,技术团队情况,设计一个适合的技术团队绩效考核机制...
查看>>
我的友情链接
查看>>
python-45: opener 的使用
查看>>
cad图纸转换完成的pdf格式模糊应该如何操作?
查看>>
Struts2与Struts1区别
查看>>
网站内容禁止复制解决办法
查看>>
Qt多线程
查看>>
我的友情链接
查看>>
Ubuntu12.04 编译android源代码及生成模拟器经历分享
查看>>
KVM网络桥接设置方法
查看>>
Puppet学习手册:Puppet Yum安装
查看>>
我的友情链接
查看>>
ansible学习记录
查看>>
网思科技校园网计费解决方案
查看>>
我的友情链接
查看>>