编程题
### 问题描述 硕有一个由 $n$ 个节点组成的树。节点编号为 $1, 2, \ldots, n$。每个节点都有一个值。 他的任务是处理以下类型的查询: 1. 将节点 $s$ 的值更改为 $x$。 2. 找到节点 $a$ 和 $b$ 之间路径上的最大值。 ### 输入格式 第一行输入两个整数 $n$ 和 $q$,表示节点数和查询数。节点编号为 $1, 2, \ldots, n$。 接下来一行有 $n$ 个整数 $v_1, v_2, \ldots, v_n$,表示每个节点的值。 然后有 $n-1$ 行描述边。每行包含两个整数 $a$ 和 $b$,表示节点 $a$ 和 $b$ 之间有一条边。 最后,有 $q$ 行描述查询。每个查询要么是 $1$ $s$ $x$ 的形式,要么是 $2$ $a$ $b$ 的形式。 ### 输出格式 输出每个类型为 $2$ 的查询的答案,一行一个。 ### 样例输入 ``` 5 3 2 4 1 3 3 1 2 1 3 2 4 2 5 2 3 5 1 2 2 2 3 5 ``` ### 样例输出 ``` 4 3 ``` ### 评测数据规模 $1 \leq n, q \leq 10^5$,$1 \leq a, b, s \leq n$,$1 \leq v_i, x \leq 10^9$。
查看答案
赣ICP备20007335号-2