
RMQ
文章平均质量分 77
谢符宝
业精于勤,荒于嬉行成于思,毁于随。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
UVALive 6609(Minimal Subarray Length)维护递增序列|RMQ
题意:给一个整数序列(可能有负数),求最短的连续序列使得序列之和大于等于整数x; 解法:第一种是On的复杂度: 我们要的是sum[j]-sum[i]>=x,如果有两个决策j = sum[j'],那么j就是没用的。即维护一个sum[j]递增序列。然后每次可以二分查找,但是这里有个特点就是要得到最近的,可以同时维护一个left指针,left指针用于跟进更原创 2014-05-13 21:47:43 · 1385 阅读 · 0 评论 -
poj1330LCA问题
裸的求最近公共祖先问题,其中poj另一个同类型的题目输入操作相当变态无聊,就拿这道题备用模板吧。 思路:先是一遍从根节点的深度优先搜索,记录些有用的信息(感觉描述起来好麻烦,不展开了,看了以下核心思想,再画画图就能看出来)。然后对信息进行一遍RMQ预处理(Nlog(N)的复杂度)。然后剩下的就是O(1)复杂度的访问随意两点的公共祖先了。 先定义一个访问顺序的概念:每个节点的访问顺序是指第一次访原创 2014-01-16 16:38:51 · 587 阅读 · 0 评论