![](https://img-blog.csdnimg.cn/20190927151117521.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
LCA
文章平均质量分 81
最近公共祖先
向上的yyy
路漫漫其修远兮,吾将上下而求索
展开
-
1556:Dis——Tarjan求LCA、倍增求LCA
【题目描述】给出 n 个点的一棵树,多次询问两点之间的最短距离。注意:边是双向的。【输入】第一行为两个整数 n 和 m。n 表示点数,m 表示询问次数;下来 n−1 行,每行三个整数 x,y,k,表示点 x 和点 y 之间存在一条边长度为 k;再接下来 m 行,每行两个整数 x,y,表示询问点 x 到点 y 的最短距离。【输出】输出 m 行。对于每次询问,输出一行。【输入样例】2 21 2 1001 22 1【输出样例】100100【提示】原创 2022-12-20 16:33:59 · 598 阅读 · 0 评论 -
1557:祖孙询问——倍增求LCA
【题目描述】已知一棵 n 个节点的有根树。有 m 个询问,每个询问给出了一对节点的编号 x 和 y,询问 x 与 y 的祖孙关系。【输入】输入第一行包括一个整数 n 表示节点个数;接下来 n 行每行一对整数对 a 和 b 表示 a 和 b 之间有连边。如果 b 是 −1,那么 a 就是树的根;第 n+2 行是一个整数 m 表示询问个数;接下来 m 行,每行两个正整数 x 和 y,表示一个询问。【输出】原创 2022-12-19 17:32:08 · 577 阅读 · 0 评论