#YDRS003C. 香老师?牙幂老师?树老师!

香老师?牙幂老师?树老师!

众所周知,delicious 老师非常喜欢树,同时有着高超的造题能力。因此,好吃老师打算用树来为你的 2023 最后涂上一抹绚丽的颜色 他温我哭 ~

题目描述

在一棵树 TT 上每个结点都标有一个字母,求有多少个有向简单路径,其上字母存在子序列构成字符串 SS

字符串的子序列指的是删除部分(可以没有)字符,保持剩下字符顺序得到的字符串。

输入格式

输入的第一行有两个正整数 C,TC,|T| 和字符串 SS,分别表示测试点编号、树的结点数和需要找的子序列。样例中的 CC 表示满足对应测试点的性质。

第二行有一个长 T|T| 的字符串,其中第 ii 个字母表示点 ii 上的字母。

之后 T1|T-1| 行,每行有两个正整数 u,vu,v 表示一条边连接的两个结点。

输出格式

输出一行一个自然数表示答案。

样例 #1

样例输入 #1

2 7 yuu
yuuyyuu
1 4
2 4
2 5
2 7
3 6
4 6

样例输出 #1

11

提示

【样例解释】

image

符合条件的路径有(按字典序排序):

  • 373\to 7737\to 3uuyuu
  • 232\to 3676\to 7uyuu
  • 434\to 3474\to 7575\to 7yuu
  • 565\to 6yuyu
  • 535\to 3yuyuu
  • 131\to 3171\to 7yyuu

一些不符合条件的路径包括 767\to 6uuyu)。

【数据范围】

本题共 2020 个测试点,每个 55 分。

测试点编号 T\lvert T\rvert\le S\lvert S\rvert\le SS 特殊性质 TT 特殊性质
1 2020 55 一条链
2
3 500500
4 30003000 2020 一条链
5
6 10510^5 22 ym
7 33 ymy
8 55 yummy m 恰有 22
9 m 不超过 3030
10 y 只在叶子处出现
11
12 2020 字符全部相同
13 字符互不相同
14 33 是菊花图
15 2020 一条链
16 所有点度数不超过55
17,18,19,20

特殊性质中,“一条链”表示第 ii 条边连接 iii+1i+1;“是菊花图”表示对任意 i<Ti<|T| 有边连接 iiT|T|

对于全体数据,保证 3T1053\le |T|\le 10^52S202\le |S|\le 20,字符串只有小写字母,所有边构成一棵树。