博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 1950 最长上升子序列 动态规划
阅读量:6812 次
发布时间:2019-06-26

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

hdu 1950 最长上升子序列

动态规划 LIS nlogn 做法 采用而二分来优化

 

1 #include 
2 #include
3 #include
4 #include
5 #include
6 #include
7 #include
8 #include
9 using namespace std ;10 11 const int maxn = 40011 ;12 int a[maxn],ans[maxn] ;13 int n,t,len,pos ;14 15 int main() 16 {17 scanf("%d",&t) ;18 while(t--) 19 {20 scanf("%d",&n) ;21 for(int i=1;i<=n;i++) 22 scanf("%d",&a[ i ]) ;23 len = 1 ;24 ans[ 1 ] = a[ 1 ] ;25 for(int i=2;i<=n;i++) 26 if(a[i]>ans[len]) ans[++len] = a[ i ] ;27 else28 {29 pos = lower_bound( ans+1,ans+len+1-1,a[ i ] ) - ans ; //30 //pos = lower_bound( ans,ans+len,a[ i ] ) - ans ; 31 ans[ pos ] = a[ i ] ;32 }33 printf("%d\n",len ) ; 34 }35 return 0 ;36 }

 

转载于:https://www.cnblogs.com/third2333/p/6856331.html

你可能感兴趣的文章
统一沟通-技巧-12-Lync-CX600-3000-5000-配置-internet
查看>>
Linux双机热备解决方案之Heartbeat
查看>>
angerfire宋杨的桌面秀
查看>>
Javascript模板引擎handlebars使用实例及技巧
查看>>
GoldenGate测试(七)
查看>>
动态访问DetailsView内的控件
查看>>
[珠玑之椟]位向量/位图的定义和应用
查看>>
数据对齐
查看>>
linux设置 让oracle10g自启动
查看>>
用JQuery给图片添加鼠标移入移出事件
查看>>
ALTER TABLE & ALTER TYPES
查看>>
Hadoop-调优剖析
查看>>
Mac前端抓包小工具Charles4.0下载
查看>>
用AHP层次分析法挑选最佳结婚对象
查看>>
Subversion安装手记
查看>>
Linux 获取设备树源文件(DTS)里描述的资源【转】
查看>>
Effective C++ 阅读笔记(二)public继承与继承中的函数覆盖
查看>>
什么是UV?
查看>>
Docker 容器测试全探索
查看>>
如何在Ubuntu 16.04中创建GIF动图
查看>>