luogu#P5439. 【XR-2】永恒
【XR-2】永恒
题目背景
我一直认为这世界没有永恒,如果非要说永恒,宇宙间唯一的永恒就是——所有的一切都会随着时光消失。——梧桐《那片星空,那片海》
题目描述
有一颗 个点的永恒的树,树中每个点 上都有一个永恒的字符串 。
但这世界没有永恒,所有的一切都会随着时光消失。我们只能给每个所谓永恒的东西定义一个永恒值 。这个值本身没有意义,只是一个象征罢了。
- 一个字符串 的永恒值 定义为它的长度 ,即:
- 树上的一条无向路径 指的是 之间的简单路径(包括 ),其永恒值 定义为路径上所有不同的无序点对 上的字符串 的最长公共前缀 的永恒值 之和,即:
- 一颗树 的永恒值 定义为树上所有的无向路径 的永恒值之和,即:
特别的是,树中每个点上的字符串都来自一颗永恒的以点 为根的 Trie 树,即每个树中的点都对应着一个 Trie 树中的点,点上的字符串就是 Trie 树中从根节点到其对应的点形成的字符串。
你需要求出这棵树的永恒值,答案对 取模。
输入格式
第一行包含两个正整数 ,分别表示树的节点数和 Trie 树的节点数。
第二行包含 个非负整数,第 个数为 ,表示点 在树上的父亲节点为 ,对于树的根节点 ,保证 。
第三行包含 个非负整数,第 个数为 ,表示点 在 Trie 树上的父亲节点为 ,保证 ,。
第四行为一个由 个字符构成的字符串,第 个字符 表示 Trie 树上点 与它的父亲节点 之间的边所代表的字符,保证 ,。
第五行包含 个正整数 ,表示树上的点 对应着 Trie 树上的点 ,保证 。
输出格式
一行一个整数,表示答案对 取模后的值。
3 17
2 0 2
0 1 2 3 4 5 6 7 8 4 10 11 12 3 14 15 16
0mayqueenkingrket
9 13 17
12
提示
【样例 说明】
所有的 为:
所有的 为:
$f(\mathrm{LCP}(S(1), S(2))) = f(\mathrm{LCP}(\texttt{"mayqueen"}, \texttt{"mayking"})) = f(\texttt{"may"}) = \mathrm{Len}(\texttt{"may"}) = 3$
$f(\mathrm{LCP}(S(1), S(3))) = f(\mathrm{LCP}(\texttt{"mayqueen"}, \texttt{"market"})) = f(\texttt{"ma"}) = \mathrm{Len}(\texttt{"ma"}) = 2$
$f(\mathrm{LCP}(S(2), S(3))) = f(\mathrm{LCP}(\texttt{"mayking"}, \texttt{"market"})) = f(\texttt{"ma"}) = \mathrm{Len}(\texttt{"ma"}) = 2$
所有的 为:
$f([1,3]) = f(\mathrm{LCP}(S(1), S(2))) + f(\mathrm{LCP}(S(1), S(3))) + f(\mathrm{LCP}(S(2), S(3))) = 3 + 2 + 2 = 7$
所以:
$f(T) = f([1,2]) + f([2,3]) + f([1,3]) = 3 + 7 + 2 = 12$
【数据规模与约定】
本题采用捆绑测试。
Subtask 1(3 points):,时限 1s。
Subtask 2(5 points):,时限 1s。
Subtask 3(9 points):,时限 1s。
Subtask 4(7 points):,时限 2s。
Subtask 5(9 points):,时限 3s。
Subtask 6(11 points):,时限 4s。
Subtask 7(19 points):,时限 3s。
Subtask 8(37 points):无特殊限制,时限 10s。
对于 的数据,。