OI笔记
文章平均质量分 88
NaiL23
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
倍增/树链剖分解决LCA问题
已知一棵树,给出u,v两点,求它们的最近公共祖先,这就是LCA问题(Least Common Ancestors)。 如上图,LCA(15,7)=6,LCA(11,3)=10,LCA(13,15)=8... 先从简单的方法入手。不妨设v的深度比u的大,也就是v比u离根节点更远一些。首先要将v提到与u同一深度,然后它们再一起上提,直到相遇,即找到了LCA为止。 代码如原创 2017-02-27 20:52:16 · 1843 阅读 · 4 评论 -
基于倍增稀疏表/线段树的区间最值查询(RMQ)问题
RMQ(Range Minimum/Maximum Query)区间最值查询,即给出长度为n的数组A,以及m组询问s、t(s<=t<=n),返回区间[s,t]中的最值。 用这篇替换掉了以前那篇Naive、漏洞百出的旧博文。 ·O(mn)的暴力做法 int solve(int s, int t){ int ans=-INF; for(int i=s;i<=t;...原创 2017-02-27 20:48:44 · 507 阅读 · 0 评论
分享