maki和tree
题号:NC200652
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

有一天,maki拿到了一颗树。所谓树,即没有自环、重边和回路的无向连通图。
这个树有 个顶点, 条边。每个顶点被染成了白色或者黑色。
maki想知道,取两个不同的点,它们的简单路径上有且仅有一个黑色点的取法有多少?
注:
①树上两点简单路径指连接两点的最短路。
的取法视为同一种。

输入描述:

第一行一个正整数  。代表顶点数量。
第二行是一个仅由字符'B'和'W'组成的字符串。第 个字符是B代表第 个点是黑色,W代表第 个点是白色。
接下来的 行,每行两个正整数 ,代表 点和 点有一条边相连

输出描述:

一个正整数,表示只经过一个黑色点的路径数量。
示例1

输入

复制
3
WBW
1 2
2 3

输出

复制
3

说明

树表示如下:
其中只有2号是黑色点。
<1,2>、<2,3>、<1,3>三种取法都只经过一个黑色点。

备注: