博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj3903
阅读量:6448 次
发布时间:2019-06-23

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

最长上升子序列

View Code
#include 
#include
#include
#include
#include
using namespace std;#define maxn 100005int n;int top;int stk[maxn];int binarysearch(int l, int r, int a){ if (l > r) return l; if (a > stk[r]) return r + 1; while (l < r) { int mid = (l + r) / 2; if (stk[mid] < a) l = mid + 1; else r = mid; } return l;}int main(){ //freopen("t.txt", "r", stdin); while (scanf("%d", &n) != EOF) { top = 0; for (int i = 0; i < n; i++) { int a; scanf("%d", &a); int index = binarysearch(0, top - 1, a); stk[index] = a; top = max(top, index + 1); } printf("%d\n", top); } return 0;}

转载地址:http://qaowo.baihongyu.com/

你可能感兴趣的文章
SpringMVC文件下载与JSON格式
查看>>
Q:图像太大,在opencv上显示不完全
查看>>
修正锚点跳转位置 避免头部fixed固定部分遮挡
查看>>
Dubbo序列化多个CopyOnWriteArrayList对象变成同一对象的一个大坑!!
查看>>
linux下ping不通的解决方法
查看>>
利用ItextPdf、core-renderer-R8 来生成PDF
查看>>
irc操作小记
查看>>
JAVA 与 PHP 的不同和相同
查看>>
建立Ftp站点
查看>>
NavigationController的使用
查看>>
多线程编程之Windows环境下创建新线程
查看>>
ASP.Net MVC的开发模式
查看>>
groupbox 下的datagridview的列标题字体修改混乱
查看>>
HDU-3092 Least common multiple---数论+分组背包
查看>>
CentOS 7使用systemctl如何补全服务名称
查看>>
Unity3D NGUI 给button按钮添加单间事件
查看>>
C# 使用各种API
查看>>
密码的校验.大小写字母,数字,特殊字符中的至少3种
查看>>
ios 不同sdk4.3 6.0版本号,关于方法的兼容性的通用方法
查看>>
Shell编程学习总结
查看>>