Codeforces Round 862 (Div. 2)
E
There Should Be a Lot of Maximums
Codeforces
2300
原题
← DF1 →
翻译中…

You are given a tree (a connected graph without cycles). Each vertex of the tree contains an integer. Let's define the $\mathrm{MAD}$ (maximum double) parameter of the tree as the maximum integer that occurs in the vertices of the tree at least $2$ times. If no number occurs in the tree more than once, then we assume $\mathrm{MAD}=0$.

翻译中…

Note that if you remove an edge from the tree, it splits into two trees. Let's compute the $\mathrm{MAD}$ parameters of the two trees and take the maximum of the two values. Let the result be the value of the deleted edge.

翻译中…

For each edge, find its value. Note that we don't actually delete any edges from the tree, the values are to be found independently.

翻译中…

Input

翻译中…

The first line contains one integer $n$ ($2 \le n \le 10^5$) — the number of vertices in the tree.

翻译中…

Each of the next $n - 1$ lines contains two integers $u$ and $v$ ($1 \le u, v \le n$) — the ends of an edge of the tree. It's guaranteed that the given edges form a valid tree.

翻译中…

The last line contains $n$ integers $a_1, a_2, \ldots, a_n$ ($1 \le a_i \le 10^9$) — the numbers in the vertices.

翻译中…

Output

翻译中…

For each edge in the input order, print one number — the maximum of the $\mathrm{MAD}$ parameters of the two trees obtained after removing the given edge from the initial tree.

翻译中…

Note

翻译中…

image

翻译中…

In the first example, after removing edge $(1, 2)$ no number repeats $2$ times in any of the resulting subtrees, so the answer is $\max(0, 0)=0$.

翻译中…

After removing edge $(2, 3)$, in the bigger subtree, $1$ is repeated twice, and $2$ is repeated twice, so the $\mathrm{MAD}$ of this tree is $2$.

翻译中…

After removing edge $(2, 4)$, in the bigger subtree, only the number $1$ is repeated, and in the second subtree, only one number appears, so the answer is $1$.

翻译中…

In the second example, if edge $1 \leftrightarrow 4$ is not removed, then one of the subtrees will have two $1$, so the answer — $1$. And if edge $1 \leftrightarrow 4$ is deleted, both subtrees have no repeating values, so the answer is $0$.

翻译中…

样例

Input #1
5
1 2
2 3
2 4
1 5
2 1 3 2 1
Output #1
0
2
1
2
InputCopy OutputCopy
Input #2
6
1 2
1 3
1 4
4 5
4 6
1 2 3 1 4 5
Output #2
1
1
0
1
1
InputCopy OutputCopy
题目信息
题号
1805E
时间限制
1 s
内存限制
256 MB
标签
暴力
数据结构
DFS 及类似
动态规划
树
双指针

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。