#P9085. 「HNOI2021 省集 Day5」下落的数字
「HNOI2021 省集 Day5」下落的数字
题目描述
一棵以 为根的树,每个点有一个权值,一个数字从根节点出发,不断按照如下策略行动:
- 在当前点的所有儿子中,选择权值大于等于它且权值最小的儿子,走到那个儿子上。
- 如果不存在这样的儿子,它将停在当前节点。
问这个数字最终停在哪个节点。
次操作,每次操作为修改一个点的权值,或者查询一个数字 从根节点出发最终到达的点的编号。
输入格式
第一行两个数 ,为树的节点数和操作数。
接下来一行 个整数,第 个数表示 号点的权值 。
接下来 行,每行两个正整数 描述树上的一条边 。
接下来 行每行描述一个操作,有如下两种格式:
1 a b
:表示把 节点的权值改成 。2 c
:表示查询数字 从根节点出发最终到达的点的编号。
注意 号点的权值并无意义,你不需要关心它以及对它的修改(尽管这样的修改可能存在)。
数据保证任意时刻所有点的权值互不相同。
输出格式
对于每个查询操作,输出一行一个整数,表示数字 最终到达的节点的编号。
样例
样例 1
5 5
6 7 8 4 2
1 2
1 3
3 4
3 5
2 8
2 4
1 3 5
2 1
2 3
3
2
5
4
样例 2,3,4
见附加文件中的 fall/fall*.in
与 fall/fall*.ans
。
测试点约束
对于所有数据,保证 ,。
子任务编号 | 特殊性质 | 分值 | |
---|---|---|---|
无 | |||
树为一条链 | |||
存在一个点的度数为 | |||
没有修改操作 | |||
无 |