博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
NYOJ-214 单调递增子序列(二) AC 分类: NYOJ ...
阅读量:6293 次
发布时间:2019-06-22

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

#include
#include
int len, n, i, j; int d[100005], a[100005]; int binsearch(int x) { int l = 1, r = len, mid; while (l <= r) { mid = (l + r) >> 1; if (d[mid-1] <= x && x < d[mid]) return mid; else if (x > d[mid]) l = mid + 1; else r = mid - 1; } }int main(){ while(scanf ("%d", &n)!=EOF) { for (i = 1; i<= n; i++) scanf ("%d", &a[i]); memset (d, 0, sizeof (d)); d[1] = a[1]; len = 1; for (i = 2; i <= n; i++) { if (a[i] < d[1]) j = 1; else if (a[i] > d[len]) j = ++len; else j = binsearch (a[i]); d[j] = a[i]; } printf ("%d\n", len); }return 0;}
以上是AC的代码,来源于:http://qiemengdao.iteye.com/blog/1660229

很好的一篇文章,可以解释公共子序列的很多问题

转载于:https://www.cnblogs.com/you-well-day-fine/p/4671666.html

你可能感兴趣的文章
PHP的工作原理和生命周期
查看>>
jQuery - 左右拖动分隔条
查看>>
注入 - Ring3 APC注入
查看>>
NFS PRC端口映射器
查看>>
关于JAVA匿名内部类,回调,事件模式的一点讨论
查看>>
Windows 术语表(Windows Glossary)
查看>>
TOJ 4689: Sawtooth
查看>>
你会开会吗
查看>>
关于FAST比较全的博文
查看>>
SCVMM 安装
查看>>
iOSBlock和delegate的用法
查看>>
4.Azure创建点到站点的***隧道(下)
查看>>
怎样为用户写“招标书”
查看>>
python运维之轻松模拟开发FTP软件05
查看>>
Nginx配置proxy_pass转发的/路径问题
查看>>
总编下午茶:挑战者心态能否帮助微软重回云计算巅峰?
查看>>
理解并取证:广域网上的PPP协议
查看>>
动软分享社区系统实现个性化导购营销平台
查看>>
shell编程 字符串处理
查看>>
Cisco3560交换机enable密码破解和恢复出厂设置
查看>>