#4622. Bingbong的回文路径

    ID: 4622 传统题 1000ms 256MiB 尝试: 4 已通过: 1 难度: 10 上传者: 标签>难度普及+/提高树结构LCA最近公共祖先树上倍增字符串哈希

Bingbong的回文路径

题目描述

⭐“我画了你身边每一个人,但却没有画你。我觉得你亮得耀眼,使我的目光无法停留。”

Bingbong 有一棵有根树,根节点为 1,总共有 nn 个节点。树中的节点通过 n1n-1 条无向边相连,每条边的权重为 1。

树中的每个节点包含一个小写字母。

Bingbong 将选择从节点 uu 开始,并在选择最短路径的情况下到达节点 vv。他想知道他所走路径形成的字符串是否是一个回文串。由于他会进行多次行走,您需要回答多个查询。

输入描述:

第一行包含一个整数n(1n105)n(1\leq n\leq 10^5),表示节点的数量。

第二行包含 nn 个小写字母,其中第 ii 个字母表示第 ii 个节点上的小写字母。

第三行包含 nn 个整数,其中第 ii 个数字 ai(1aii1)a_i (1\leq a_i\leq i-1) 表示第 ii 个节点的父节点,对于根节点 ai=0a_i=0

第四行包含一个整数 q(1q105)q(1\leq q\leq 10^5) ,表示查询的数量。接下来是 qq 行,每行包含两个整数 uuvv,表示一个查询的起点和终点。

输出描述:

输出 q 行,每行包含一个字符串。如果查询的起点到终点的路径连接形成一个回文串,则输出 YES,否则输出 NO

示例1

5
bbaaa
0 1 1 2 2
3
2 3
4 3
5 3
NO
YES
YES

Source

Bingbong的回文路径

}