Logo Wy Online Judge

WyOJ

#618. IOIP 20250222 multiple-tree-search

警察局 2099

时间限制:1秒
内存限制:256 MB
输入:标准输入
输出:标准输出

题目描述

复制人被创造出来是为了执行人类不愿意自己做的工作。这包括非常危险的任务,在《银翼杀手2049》事件之后,这样的任务越来越多。

洛杉矶警察局共有 $n$ 名员工,有着严格的等级制度。顶端是新任警察局长,替代了乔希中尉——编号为 $1$ 的员工,其余 $n-1$ 名员工是复制人,每个复制人都有直接上级 $p_i < i$。因此,员工的等级结构构成一棵以 $1$ 号节点为根的树。

每个员工还有一个专长 $a_i$,用一个从 'a''z' 的英文字母表示——它描述了该员工最擅长的技能或能力。已知这些专长是随机均匀分布的,即每个员工拥有某个具体专长的概率恰好为 $\frac{1}{26}$,并且与其他员工的专长相互独立。

现在警察局有 $m$ 个至关重要的任务需要紧急处理。由于任务很严峻,不能随意派人去执行:

  • 每个任务需要派遣一个员工序列,其中每个后一个必须是前一个的直接下属;换句话说,这些警察必须构成等级树中的一条垂直路径;
  • 每个任务由一个字符串 $s_i$ 指定,该字符串描述了成功完成该任务所需的专长集合——派遣的警察按军衔从高到低(从等级树的顶部到底部)排序,其专长必须与 $s_i$ 中的字符顺序完全一致。

对于每个 $m$ 个任务,求选择一队可派遣的警察序列的方案数。每个任务的答案需要独立计算。

输入格式

第一行包含两个整数 $n$ 和 $m$ —— 员工数和任务数($1 \le n, m \le 4 \cdot 10^5$)。

第二行包含 $n-1$ 个整数 $p_2, p_3, \dots, p_n$ —— 第 $2$ 到第 $n$ 名员工的直接上级编号($1 \le p_i < i$)。

第三行包含一个长度为 $n$ 的字符串 $a$,其中第 $i$ 个字符是从 'a''z' 的字母,表示第 $i$ 名员工的专长。

接下来 $m$ 行,每行一个字符串 $s_i$ —— 每个任务所需的专长序列($1 \le |s_i| \le 4 \cdot 10^5$)。保证每个 $s_i$ 仅由 'a''z' 的字母组成。同时保证所有 $s_i$ 的总长度不超过 $10^6$。

输出格式

对于每个任务,输出一行一个整数,表示在满足条件的情况下,选择 $|s_i|$ 名员工来完成该任务的方案数。

评分标准

只有通过该子任务及其所需子任务的所有测试,才能获得该子任务分数。

子任务 分数 附加限制 所需子任务 评测信息
0 样例 完全
1 7 $n, m, s_i \le 10$ 0 完全
2 18 $p_i = i-1$ 对所有 $i$ 第一次错误
3 8 $m = 1$;$s_{i,j} = \text{'a'}$ 对所有 $i,j$ 第一次错误
4 8 $m = 1$ 3 第一次错误
5 12 $ s_i \le 3$ 对所有 $i$ 第一次错误
6 16 $n, m \le 100$;$ s_i \le 100$ 对所有 $i$ 0, 1 第一次错误
7 6 $n \cdot m \le 10^6$ 0, 1, 6 第一次错误
8 25 0–7 第一次错误

示例

示例 1

输入

3 4
1 1
aba
aa
ab
ba
bb

输出

1
1
0
0

示例 2

输入

7 6
1 1 2 3 5 6
aabbaba
aa
ab
ba
aba
ababa
ababab

输出

1
3
2
2
1
0

示例 3

输入

10 4
1 2 3 4 5 6 7 8 9
abacabadab
abacabada
bacabadab
abacabadab
bacabadaba

输出

1
1
1
0

注意

注意,在样例中,专长的随机性条件被违反了,这些样例是为方便说明而特别选择的。

在其他所有测试中,每个专长都是从 'a''z' 中均匀随机独立选择的。

题目信息
  • 难度 UKE
  • 控制组 group_default
  • 时间限制 1 s
  • 空间限制 256 MB
  • 数据大小 47.253 MB
提交统计
  • 提交数 0
  • 通过数 0
  • 通过率 N/A