编程题
字符串树
### 题目描述
字符串树本质上还是一棵树,即 $N$ 个节点 $N-1$ 条边的连通无向无环图,节点从 $1$ 到 $N$ 编号。与普通的树不同的是,树上的每条边都对应了一个字符串。萌萌和 JYY 在树下玩的时候,萌萌决定考一考 JYY。每次萌萌都写出一个字符串 $S$ 和两个节点 $U,V$,JYY 需要立即回答 $U$ 和 $V$ 之间的最短路径(即 $U,V$ 之间边数最少的路径,由于给定的是一棵树,这样的路径是唯一的)上有多少个字符串以 $S$ 为前缀。
JYY 虽然精通编程,但对字符串处理却不在行。所以他请你帮他解决萌萌的难题。
### 输入描述
输入第一行包含一个整数 $N$,代表字符串树的节点数量。
接下来 $N-1$ 行,每行先是两个数 $U,V$,然后是一个字符串 $S$,表示节点 $U$ 和节点 $V$ 之间有一条直接相连的边,这条边上的字符串是 $S$。输入数据保证给出的是一棵合法的树。
接下来一行包含一个整数 $Q$,表示萌萌的问题数。
接下来 $Q$ 行,每行先是两个数 $U,V$,然后是一个字符串 $S$,表示萌萌的一个问题是节点 $U$ 和节点 $V$ 之间的最短路径上有多少字符串以 $S$ 为前缀。
其中,$1\leq N,Q\leq 10^5$,输入所有字符串长度不超过 $10$ 且只包含 `a~z` 的小写字母。
### 输出描述
输出 $Q$ 行,每行对应萌萌的一个问题的答案。
### 输入输出样例
#### 示例 1
>输入
``` txt
4
1 2 ab
2 4 ac
1 3 bc
3
1 4 a
3 4 b
3 2 ab
```
>输出
``` txt
2
1
1
```