logo AlgoBeat OnlineJudge
登录 注册

#10227. [CF1491H] Yuezheng Ling and Dynamic Tree

内存限制:256 MiB 时间限制:1500 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: 匿名

题目描述

乐正绫送给洛天依一棵有 个节点的树,根节点为

洛天依会告诉你第 个节点的父节点是 (对于 ,有 ),并且她会让你进行 次两种类型的操作:

  1. 她会给你三个整数 )。你需要将所有满足 替换为
  2. 她会给你两个整数 )。你需要求出节点 的最近公共祖先(LCA)。

输入格式

第一行包含两个整数 ),分别表示节点数和操作数。

第二行包含 个整数 ),其中 表示节点 的父节点。

接下来的 行,每行表示一个操作。每行的第一个整数是 ),表示操作类型。

  • 如果 ,表示第一种操作。接下来有三个整数 ),表示将所有 替换为
  • 如果 ,表示第二种操作。接下来有两个整数 ),你需要求出 的最近公共祖先。

保证至少有一次第二种操作。

输出格式

对于每个第二种操作,输出一行答案。

样例

输入 #1

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

输出 #1

3
3
1

数据范围与提示

样例中的树结构如下图所示。

经过一次第一种操作后,树结构变为如下图所示。