P7310 [COCI 2018/2019 #2] Deblo
题目描述
给定一个包含 $n$ 个结点的树,其中每个结点都有一个权值。一条路径的权值定义为该路径经过的所有结点的权值异或后的结果。
你的任务是求出所有路径的权值之和。
输入格式
第一行输入正整数 $N$,表示树的结点个数。
第二行输入 $N$ 个用空格分隔的整数 $v_i$,第 $i$ 个整数表示结点 $i$ 的权值。
接下来的 $N-1$ 行,每行输入整数 $a_j,b_j$,表示 $a_j,b_j$ 之间有一条边。
输出格式
输出所有路径的权值之和。
说明/提示
#### 样例 1 解释
路径 $1 \to 1$ 的权值为 $1$;
路径 $1 \to 2$ 的权值为 $1⊕2=3$;
路径 $1 \to 3$ 的权值为 $1⊕2⊕3=0$;
路径 $2 \to 2$ 的权值为 $2$;
路径 $2 \to 3$ 的权值为 $2⊕3=1$;
路径 $3 \to 3$ 的权值为 $3$。
所有路径的权值之和为 $1+3+0+2+1+3=10$。
#### 数据规模与约定
对于 $30\%$ 的数据,$N \le 200$。
对于 $50\%$ 的数据,$N \le 1000$。
对于另外 $20\%$ 的数据,$x=1,2,\cdots,N-1$ 中的每个结点都和结点 $x+1$ 之间有一条边。
对于 $100\%$ 的数据,$1 \le a_j,b_j \le N \le 10^5$,$0 \le v_i \le 3 \times 10^6$。
#### 说明
**本题分值按 COCI 原题设置,满分 $90$。**
**题目译自 [COCI2018-2019](https://hsin.hr/coci/archive/2018_2019/) [CONTEST #2](https://hsin.hr/coci/archive/2018_2019/contest2_tasks.pdf) _T3 Deblo_。**