#YHDF2167. 树的公共祖先(LCA)
树的公共祖先(LCA)
问题描述
给定一棵树和两个不同的结点,求出他们最近的公共祖先父结点。 已知该树有 个结点,标号 。
输入格式
第 行输入一个整数 ,代表结点数量(); 第 行输入两个整数 ,表示需要计算的结点; 以下 行,每行两个整数 和 ,表示 的父结点是 。
输出格式
输出 与 的最近公共祖先 。
样例
输入
9
9 7
2 1
3 2
4 2
5 3
8 5
9 5
6 4
7 4
输出
2
给定一棵树和两个不同的结点,求出他们最近的公共祖先父结点。 已知该树有 n 个结点,标号 1..n 。
第 1 行输入一个整数 n,代表结点数量(n≤100); 第 2 行输入两个整数 x,y,表示需要计算的结点; 以下 n−1 行,每行两个整数 a 和 b,表示 a 的父结点是 b。
输出 x 与 y 的最近公共祖先 root。
9
9 7
2 1
3 2
4 2
5 3
8 5
9 5
6 4
7 4
2