「DTOI-4」行走

题目背景

小 L 感到无聊,于是希望在树上行走。

题目描述

小 L 有一棵 $n$ 个点的树,树上点有点权,其中第 $i$ 个点权值为 $a_i$。 他不喜欢奇奇怪怪的权值,于是他保证 $a_i$ 一定是 $-1, 0, 1$ 之一。 他认为在树上行走是有趣的,于是他想要在这棵树上走出一条路径 $P$,其需要满足以下条件: - $P$ 是一条**可以为空**的**简单有向路径**。 - 设 $P$ 中依次经过的点为 $P_1, P_2, \cdots, P_{|P|}$,则你求出的 $P$ 需要满足 $P_1 = 1$。 - 设 $f(P) = \displaystyle\sum_{i = 1}^{|P|} \frac{a_{P_i}}{2^{i - 1}}$,则你求出的 $P$ 需要满足 $f(P)$ 最大。 - 在 $f(P)$ 最大的前提下,你求出的 $P$ 还需要满足 $P$ 的字典序最小。 请你求出符合上述条件的路径 $P$。 ------------ 关于本题中字典序的定义: 设有两条待比较的路径 $P \neq Q$。 - 若存在 $1 \leq i \leq \min(|P|, |Q|)$,使得 $\forall 1 \leq j < i, P_j = Q_j$ 且 $P_i < Q_i$,则我们称 $P$ 的字典序小于 $Q$。 - 若存在 $1 \leq i \leq \min(|P|, |Q|)$,使得 $\forall 1 \leq j < i, P_j = Q_j$ 且 $P_i > Q_i$,则我们称 $P$ 的字典序大于 $Q$。 - 若 $\forall 1 \leq i \leq \min(|P|, |Q|), P_i = Q_i$ 且 $|P| < |Q|$,则我们称 $P$ 的字典序小于 $Q$。 - 若 $\forall 1 \leq i \leq \min(|P|, |Q|), P_i = Q_i$ 且 $|P| > |Q|$,则我们称 $P$ 的字典序大于 $Q$。

输入输出格式

输入格式


第一行,一个整数 $n$; 第二行,$n$ 个整数 $a_1, a_2, \cdots, a_n$; 接下来 $n - 1$ 行,每行两个整数 $u, v$,表示树上的一条边。

输出格式


一行,$|P|$ 个整数,表示你求出的路径 $P$ 中依次经过的点。 **特别的,若 $P$ 为空路径,请不要进行任何输出操作。**

输入输出样例

输入样例 #1

5
1 0 -1 1 -1
1 2
2 3
2 4
1 5

输出样例 #1

1 2 4

说明

#### 样例 #1 解释 ![](https://cdn.luogu.com.cn/upload/image_hosting/c7n2n6i0.png) $P = [1, 2, 4]$ 时 $f(P) = 1 + 0 + \frac{1}{4} = \frac{5}{4}$。可以证明不存在更优的 $P$。 #### 数据范围 | $\textbf{Subtask}$ | $n$ | $a_i$ | 依赖 | 分值 | | :------: | :------: | :------: | :------: | :------: | | $1$ | $1 \leq n \leq 50$ | 无特殊限制 | 无 | $10 \operatorname{pts}$ | | $2$ | $1 \leq n \leq 500$ | 同上 | $1$ | $10 \operatorname{pts}$ | | $3$ | $1 \leq n \leq 5 \times 10^3$ | 同上 | $1, 2$ | $10 \operatorname{pts}$ | | $4$ | $1 \leq n \leq 10^5$ | 同上 | $1 \sim 3$ | $20 \operatorname{pts}$ | | $5$ | 无特殊限制 | $a_i \in \{-1, 1\}$ | 无 | $20 \operatorname{pts}$ | | $6$ | 同上 | 无特殊限制 | $1 \sim 5$ | $30 \operatorname{pts}$ | 对于 $100\%$ 的数据,$1 \leq n \leq 5 \times 10^5$,$a_i \in \{-1, 0, 1\}$,$1 \leq u, v \leq n$,保证给出的边可以构成一棵**无根树**。