Tree Weights

题意翻译

给你一棵节点编号为 $1 \sim n$($2 \le n \le 10^5$) 的无根树,每条边有未知的正整数边权。 现在对于所有的 $1 \le i < n$,给出点 $i$ 到点 $i + 1$ 的距离 $d_i$($1 \le d_i \le 10^{12}$),请你还原出任意一组合法的边权或输出 $-1$ 报告无解。

题目描述

You are given a tree with $ n $ nodes labelled $ 1,2,\dots,n $ . The $ i $ -th edge connects nodes $ u_i $ and $ v_i $ and has an unknown positive integer weight $ w_i $ . To help you figure out these weights, you are also given the distance $ d_i $ between the nodes $ i $ and $ i+1 $ for all $ 1 \le i \le n-1 $ (the sum of the weights of the edges on the simple path between the nodes $ i $ and $ i+1 $ in the tree). Find the weight of each edge. If there are multiple solutions, print any of them. If there are no weights $ w_i $ consistent with the information, print a single integer $ -1 $ .

输入输出格式

输入格式


The first line contains a single integer $ n $ ( $ 2 \le n \le 10^5 $ ). The $ i $ -th of the next $ n-1 $ lines contains two integers $ u_i $ and $ v_i $ ( $ 1 \le u_i,v_i \le n $ , $ u_i \ne v_i $ ). The last line contains $ n-1 $ integers $ d_1,\dots,d_{n-1} $ ( $ 1 \le d_i \le 10^{12} $ ). It is guaranteed that the given edges form a tree.

输出格式


If there is no solution, print a single integer $ -1 $ . Otherwise, output $ n-1 $ lines containing the weights $ w_1,\dots,w_{n-1} $ . If there are multiple solutions, print any of them.

输入输出样例

输入样例 #1

5
1 2
1 3
2 4
2 5
31 41 59 26

输出样例 #1

31
10
18
8

输入样例 #2

3
1 2
1 3
18 18

输出样例 #2

-1

输入样例 #3

9
3 1
4 1
5 9
2 6
5 3
5 8
9 7
9 2
236 205 72 125 178 216 214 117

输出样例 #3

31
41
59
26
53
58
97
93

说明

In the first sample, the tree is as follows: ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF1844G/c09bf8722c3aa111bf09fb0e642663d3a1f2fd7d.png)In the second sample, note that $ w_2 $ is not allowed to be $ 0 $ because it must be a positive integer, so there is no solution. In the third sample, the tree is as follows: ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF1844G/7c57ab2994543c5040c9efc072627cc765133671.png)