当前位置: 首页 > news >正文

最近公共祖先(LCA)

题目描述

如题,给定一棵有根多叉树,请求出指定两个点直接最近的公共祖先。

输入格式

第一行包含三个正整数 N,M,S,分别表示树的结点个数、询问的个数和树根结点的序号。

接下来 N−1 行每行包含两个正整数x,y,表示 x 结点和 y 结点之间有一条直接连接的边(数据保证可以构成树)。

接下来 M 行每行包含两个正整数a,b,表示询问 a 结点和 b 结点的最近公共祖先。

输出格式

输出包含 M 行,每行包含一个正整数,依次为每一个询问的结果。

输入输出样例

输入 

5 5 4
3 1
2 4
5 1
1 4
2 4
3 2
3 5
1 2
4 5

输出 

4
4
1
4
4

说明/提示

对于 30%30% 的数据,�≤10N≤10,�≤10M≤10。

对于 70%70% 的数据,�≤10000N≤10000,�≤10000M≤10000。

对于 100%100% 的数据,1≤�,�≤5000001≤N,M≤500000,1≤�,�,�,�≤�1≤x,y,a,b≤N,不保证 �≠�a=b。

样例说明:

该树结构如下:

http://www.lryc.cn/news/336439.html

相关文章:

  • ABBYY FineReader15免费电脑OCR图片文字识别软件
  • 2024年第十七届 认证杯 网络挑战赛 (A题)| 保暖纤维的保暖能力 |数学建模完整代码+建模过程全解全析
  • 算法训练营第37天|LeetCode 738.单调递增的数字 968.监控二叉树
  • Vue+el-table 修改表格 单元格横线边框颜色及表格空数据时边框颜色
  • 大恒相机-程序异常退出后显示被占用
  • 头歌-机器学习 第16次实验 EM算法
  • 电脑启动引导的两种方式
  • 用php编写网站源码的一些经验
  • 海山数据库(He3DB)原理剖析:浅析OLAP数据库计算引擎中的统计信息
  • 视频图像的两种表示方式YUV与RGB(4)
  • PostgreSQL入门到实战-第十四弹
  • 分布式数据库中间件 Mycat 和 ShardingSphere 对比
  • Python实现BOA蝴蝶优化算法优化BP神经网络回归模型(BP神经网络回归算法)项目实战
  • 3D Web轻量化引擎HOOPS Commuicator如何从整体装配中创建破碎的装配零件和XML?
  • 关于运行阿里云直播Demo pub get 报的错
  • C语言调用Python
  • SVN客户端异常问题处理
  • gin+sse实现离散的消息通知
  • C++ //练习 11.38 用unordered_map重写单词计数程序(参见11.1节,第375页)和单词转换程序(参见11.3.6节,第391页)。
  • 【示例】MySQL-4类SQL语言-DDL-DML-DQL-DCL
  • 基于SpringBoot+Vue的果蔬种植销售一体化服务平台(源码+文档+部署+讲解)
  • 数据结构面试
  • Linux 上安装 SQLite
  • C++模板初阶(个人笔记)
  • 如何用Java后端处理JS.XHR请求
  • 分布式锁-redission
  • C/C++ 自定义头文件,及头文件结构详解
  • 快速列表quicklist
  • 《MATLAB科研绘图与学术图表绘制从入门到精通》
  • Day3-struct类型、列转行、行转列、函数