C. 奶牛聚会

    传统题 1000ms 256MiB

奶牛聚会

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

样例下载

【题目描述】

农夫约翰有 NN 个农场,编号为 11 ~ NN ,编号为 ii 的农场中住着 XiX_i 头奶牛。农场间有若干条双向通行的道路,每条道路的长度均为 11。任意两个农场间存在着唯一的路径。

现在约翰准备选择一个农场,让奶牛们来参加聚会。奶牛们是很懒的,她们去往某个农场总是走行程最短的路径。由于奶牛的产奶量和她的运动量之间存在着联系,约翰计算出了任意一个农场作为聚会地点时所有奶牛的行走路程数据。具体地,如果在编号为 ii 的农场聚会,则所有奶牛到达农场 ii 行走的路程之和为 SiS_i

约翰经过计算,得到了 SiS_i。但是他却把每个农场住着的奶牛数量 XiX_i 忘记了。

请你根据约翰计算得到的 SiS_i 的值反推出 XiX_i 的值。如果有多组解,输出任意一组即可。如果无解,则输出 -1

【输入格式】

第一行:一个整数 NN

接下来 N1N-1 行,每行两个整数 u,vu, v 表示农场 uu 和农场 vv 之间有一条道路。

N+1N+1 行:共 NN 个整数,依次表示 S1,S2,,SNS_1, S_2, …, S_N

【输出格式】

一行:如果有解,则输出 NN 个整数,依次表示 X1,X2,,XNX_1, X_2, …, X_N;如果无解,则输出 -1

【样例1输入】

3
1 2
1 3
1 4 2

【样例1输出】

2 0 1

【样例2输入】

3
1 2
1 3
1 2 3

【样例2输出】

-1

【数据范围】

1N5×105,0Si2×1091 ≤ N ≤ 5×10^5, 0 ≤ S_i ≤ 2×10^9

2026-08-24

未参加
状态
已结束
规则
OI
题目
4
开始于
2026-8-24 8:00
结束于
2026-8-24 11:00
持续时间
3 小时
主持人
参赛人数
31