#CF932F. C122【李超树合并+DP】Escape Through Leaf
C122【李超树合并+DP】Escape Through Leaf
CF932F Escape Through Leaf
题目描述
给定一棵有 个节点的树(节点编号为 到 ),以节点 为根。每个节点都有两个关联值,分别为 和 。
你可以从某个节点跳到其子树中的任意节点。从节点 跳到节点 的花费为 。由一次或多次跳跃组成的路径的总花费为各次跳跃花费之和。对于每个节点,计算从该节点到达任意叶子节点的最小总花费。注意,根节点永远不会被视为叶子节点,即使它的度数为 。
注意,不能从一个节点跳到自身。
输入格式
第一行输入一个整数 (),表示树的节点数。
第二行输入 个用空格分隔的整数 ()。
第三行输入 个用空格分隔的整数 ()。
接下来的 行,每行输入两个用空格分隔的整数 和 (),表示树中节点 和 之间有一条边。
输出格式
输出 个用空格分隔的整数,第 个整数表示从节点 到达任意叶子节点的最小花费。
输入输出样例 #1
输入 #1
3
2 10 -1
7 -7 5
2 3
2 1
输出 #1
10 50 0
输入输出样例 #2
输入 #2
4
5 -10 5 7
-8 -80 -3 -10
2 1
2 4
1 3
输出 #2
-300 100 0 0
说明/提示
在第一个样例中,节点 已经是叶子节点,因此花费为 。对于节点 ,跳到节点 的花费为 。对于节点 ,可以直接跳到节点 ,花费为 。
在第二个样例中,节点 和节点 是叶子节点,因此花费为 。对于节点 ,跳到节点 的花费为 。对于节点 ,先跳到节点 ,花费为 ,然后从 跳到 ,花费为 。
由 ChatGPT 4.1 翻译