会员
周边
捐助
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
lzw4896s
博客园
首页
新随笔
联系
订阅
管理
2014年8月4日
给出一个长度为n的数列,请对于每一个数,输出他右边第一个比他大的数。n<=100000.
摘要: RT,一个ppt里看到的题,不过没讲做法。百度上基本搜不到。自己想了个做法,理论上可行,复杂度也是O(nlogn)。首先,做一次RMQ,求区间最大值。对于任意一个数s[i],可以用logn的时间求出他右边第一个比他大的数:RMQ[i][j]表示从s[i]开始的2^j个数中的最大值。对于确定的i,RM...
阅读全文
posted @ 2014-08-04 22:13 lzw4896s
阅读(490)
评论(0)
推荐(1)
编辑
公告