AT_relay2_b.Evergrowing Tree

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

给定一个整数 NN。请考虑如下图所示的,一个无穷延展的完全 NN 叉树。


图:N=3N = 3 的情况下的无穷延展完全 NN 叉树

如图所示,每个顶点都被赋予了互不重复的正整数编号,并且对任意正整数,都存在一个编号为该数的顶点。树的根顶点编号为 11。其余顶点的编号分配规则为,越靠上的层编号越小,同一层中越靠左编号越小。

现在对于这棵树,你需要回答 QQ 个如下格式的询问。第 ii 个询问 (1≤i≤Q)(1 \leq i \leq Q) 如下:

  • 求顶点 viv_i 和 wiw_i 的最近公共祖先(参见提示)的顶点编号。

输入格式

输入通过标准输入给出,格式如下:

NN QQ v1v_1 w1w_1 …\ldots vQv_Q wQw_Q

输出格式

输出共 QQ 行。第 ii 行请输出顶点 viv_i 和 wiw_i 的最近公共祖先的顶点编号。

输入输出样例

  • 输入#1

    3 3
    5 7
    8 11
    3 9

    输出#1

    2
    1
    3
  • 输入#2

    100000 2
    1 2
    3 4

    输出#2

    1
    1

说明/提示

注释

  • 对于有根树,两个顶点 vv 与 ww 的最近公共祖先是同时为 vv 和 ww 祖先的所有顶点中,距离根最远的一个。这里顶点自身也被视为自己的祖先。例如,在题目图示中的树中,顶点 55 和 77 的最近公共祖先为顶点 22,顶点 88 和 1111 的最近公共祖先为顶点 11,顶点 33 和 99 的最近公共祖先为顶点 33。

数据范围

  • 1≤N≤1091 \leq N \leq 10^9
  • 1≤Q≤1051 \leq Q \leq 10^5
  • 1≤vi<wi≤1091 \leq v_i < w_i \leq 10^9

样例解释 1

本例中的询问与注释部分给出的例子相对应。

由 ChatGPT 5 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页