#CSP1127. 距离 (distance)
距离 (distance)
题目描述
小 Z 和 小 Y 收到了一颗漂亮的树,由 个节点构成,编号 ,其中 号节点是树的根。
我们称节点 是节点 的祖先,当且仅当 在 到根的路径上(注意这里每个节点都是自己的祖先)。
我们定义 表示 的子树里的点集,也就是所有以 为祖先的节点集。
现在小 Z 给了每个节点 一个权值 ,小 Y 给了每个节点 一个权值 。
我们定义一个节点 的价值为
$$ans_u=\sum_{x\in subtree_u}\sum_{y\in subtree_u} \min\{|a_x-a_y|,|b_x-b_y|\} \mod 10^9+7 $$请你对每个节点 求出其价值 。
输入格式
从 distance.in
文件读入数据。
第一行一个整数,代表树上的节点个数 。
接下来 行,每行两个整数 ,代表树上的一条边连接节点 和节点 。保证输入的所有边构成了一棵树。
接下来 行,每行两个整数 ,代表第 个节点的两个权值。
输出格式
输出到 distance.out
文件。
共 行,第 行一个整数,表示 。
样例
5
1 2
1 3
2 4
2 5
9 5
2 8
7 1
4 3
6 6
44
12
0
0
0
样例 2
点击链接 ex_distance2.in 和 ex_distance2.out 下载大样例 2 的输入数据和输出数据。
数据范围
对于 的测试点,保证 。
对于另外 的测试点,保证 。
对于另外 的测试点,保证 。
对于剩下 的测试点,保证 。
Related
In following contests: