博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LIS+二分法
阅读量:4619 次
发布时间:2019-06-09

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

http://poj.org/problem?id=3903

数列里是存从小到大排的数,二分也是为了这个服务的,不断更新。而len才是所求长度

1 #include 
2 #include
3 #include
4 #include
5 #include
6 #include
7 #define mem(a) memset(a,0,sizeof(a)) 8 using namespace std; 9 10 int main()11 {12 int t,a[100005],f[100005];13 while(cin>>t)14 {15 for(int i=0;i
f[len]) f[++len]=a[i];24 else25 {26 l=0,r=len;27 while(l<=r)28 {29 mid=((l+r)>>1);30 if(f[mid]>=a[i]) r=mid-1;31 else l=mid+1;32 }33 f[l]=a[i]; //因为执行l=mid+1的条件就是a[i]大于mid了所以到最后正好能被替换掉的下标就是l或者r+134 }35 }36 cout<
<
View Code

 

转载于:https://www.cnblogs.com/XXrll/p/10186732.html

你可能感兴趣的文章
Phonegap移动开发:布局总结(一) 全局
查看>>
Java 变参函数的实现
查看>>
nrf51 SDK自带例程的解读
查看>>
SESSION技术
查看>>
数据结构(五)之直接插入排序
查看>>
SQL函数——LENGTH()和LENGTHB()
查看>>
vim - manual -个人笔记
查看>>
详解Javascript中prototype属性(推荐)
查看>>
angularjs实现首页轮播图
查看>>
Git 对象 和checkout 和stash的笔记
查看>>
团队项目总结2-服务器通信模型和顺序图
查看>>
hdu 1085 Holding Bin-Laden Captive!
查看>>
[周记]8.7~8.16
查看>>
递归定义
查看>>
kindeditor 代码高亮设置
查看>>
图的邻接表存储
查看>>
2018 leetcode
查看>>
PHP中获取当前页面的完整URL
查看>>
所谓输入掩码技术,即只有数字键起作用
查看>>
Display对象,Displayable对象
查看>>