Logo Universal Online Judge

UOJ

时间限制:1 s 空间限制:32 MB
统计

一棵有 n(1≤n≤1000) 个节点的树,每个节点 i(1≤i≤n) 都有一个权值 Ci。现在要把这棵树的节点全部染色,染色的规则是:根节点 R 可以随时被染色;对于其他节点,在被染色之前它的父节点必须已经染上了色。每次染色的代价为 T×C[i],其中 T 代表当前是第几次染色。求把这棵树染色的最小总代价。 例,如下图,有一棵5个结点的树,C值为1,2,1,2,4,我们按1,3,5,2,4的顺序染色,费用为33.

112.png

输入包含几组数据,每组数据格式如下,第一行两个数,N和R,分别表示树的结点个数,和根结点。接下来一行,N个数,分别表示每个结点的C值。接下来N-1行,每行两个数,分别表示边。0,0表示输入结束 输出:每组数据一行表示最小花费。
样例:
输入:

5 1
1 2 1 2 4
1 2
1 3
2 4
3 5
0 0
输出:
33