
最近公共祖先
文章平均质量分 70
llgyc
这个作者很懒,什么都没留下…
展开
-
【CodeVS1036】商务旅行
【Description】 某首都城市的商人要经常到各城镇去做生意,他们按自己的路线去做,目的是为了更好的节约时间。 假设有N个城镇,首都编号为1,商人从首都出发,其他各城镇之间都有道路连接,任意两个城镇之间如果有直连道路,在他们之间行驶需要花费单位时间。该国公路网络发达,从首都出发能到达任意一个城镇,并且公路网络不会存在环。 你的任务是帮助该商人计算一下他的最短旅行时间。【Input原创 2015-08-02 18:29:08 · 551 阅读 · 0 评论 -
Tarjan 算法求LCA(Least Common Ancestors)
Tarjan有几个著名的算法,其中之一就是求LCA(最近公共祖先)。 一个出现在有根树中间的常见问题是:在有根树T中询问一个距离根节点最远的结点xx(即深度最大的结点)使得xx同时为结点Tu、TvT_u、T_v的祖先,我们称xx为u、vu、v的最近公共祖先。这种对于公共祖先的询问我们称之为公共祖先问题,并且以LCA(T,u,v)LCA(T, u, v)表示询问TT中结点Tu、TvT_u、T_v原创 2015-08-02 18:14:12 · 739 阅读 · 0 评论 -
【HackerRank】【HourRank 20】Birjik and Nicole's Tree Game
题目大意 给你一棵形态确定的NN个点的有根树,1号节点为根,有QQ个询问,每次询问如果把给定的kk个点染色,子树中被染色节点数为0,1,2,...,k0,1,2,...,k的节点分别有多少。 N,Q≤3×105,∑k≤3×105N,Q\le3\times10^5,\sum k\le3\times10^5Solution 果然是好久没打题了,看了题目又不会做。 观察题目可以发现,由于∑原创 2017-05-03 16:18:02 · 411 阅读 · 0 评论