
经典问题
文章平均质量分 79
gotojava9
这个作者很懒,什么都没留下…
展开
-
最近公共祖先 LCA (Lowest Common Ancestor)
【题目描述】 在有根树中,两个节点 u 和 v 的公共祖先中距离最近的被称为最近公共祖先LCA。 给出一棵有根树,有 M 对查询,求每一对 u 和 v 的LCA。 【输入格式】 第一行,N,表示这棵树有 N 个节点。 第二行~第 N 行,x 和 y,表示 x 是 y 的祖先。 第 N+1 行,M。 第 N+2 行~第 N+M+1行,u 和 v。 【输出原创 2015-12-04 22:36:05 · 655 阅读 · 0 评论 -
最长上升子序列 LIS (Longest Increasing Subsequence)
已知一个有N个数的数列a0,a1,...,aN−1a_0, a_1, ..., a_{N-1},求该数列的一个子序列a′0,a′1,...,a′M−1a'_0, a'_1, ..., a'_{M-1},使a′0≤a′1≤...≤a′M−1a'_0≤a'_1≤ ...≤ a'_{M-1},且M尽量大。注意:子序列意思是a′i,a′i+1a'_i, a'_{i+1}映射到aa的编号不一定连续,但相对位置原创 2016-02-24 14:20:09 · 1053 阅读 · 0 评论 -
范围最小值查询 RMQ (Range Minimum Query)
本文分别描述了用线段树、稀疏表、平方分割等方法解决静态RMQ、单点修改RMQ以及区间修改RMQ,主要参考了TopCoder的https://www.topcoder.com/community/data-science/data-science-tutorials/range-minimum-query-and-lowest-common-ancestor/原创 2016-02-24 13:21:33 · 1940 阅读 · 0 评论