#2222. 徐老师的拜师学艺

徐老师的拜师学艺

题目描述

由于徐老师勇闯恶魔塔,打败了恶魔,并救出了漂亮的蛋蛋公主事迹传遍了大江南北,于是来了很多很多优秀的学生想跟徐老师拜师学艺,徐老师把这些学生排成了一棵大小为 nn 的有根树,根节点为 11 号点,且根节点的深度为 11

树上每个结点代表徐老师的一个学生,每个结点有一个名字 sis_i,用小写字母 aza\sim z 表示表示。

徐老师对他的学生很满意,于是他开始了 mm 次点名,每次点名会把结点 uu 的子树中,深度为 kk 的结点的名字都取出来,然后进行重排

现在徐老师想知道,重排后能否形成一个回文串?

回文串定义为一个字符串从左往右读,和从右往左读是一样的,比如aabbcbbaaabba 等。

输入格式:

第一行两个数 n,mn,m,表示树上结点个数和徐老师点名的次数。

第二行 n1n-1 个数,第 ii 个数表示树上第 i+1i+1 的节点的父亲结点的编号 pip_i,保证父亲结点的编号比该结点小。

第三行是一个长度为 nn 的字符串 ss,其中 sis_i 表示 ii 号结点的名字

接下来 mm 行,每行一个询问 u,ku,k,表示查询的是 uu 子树中深度为 kk 的结点。

输出格式:

mm 行,如果能构成回文串,输出huiwen,否则输出?

输入样例

8 7
1 1 2 2 5 5 3
dacxyppx
1 1
1 2
1 3
1 4
2 2
2 3
3 3

输出样例

huiwen
?
huiwen
huiwen
huiwen
?
huiwen

样例解释:

询问 11a 是回文;

询问 22ac 重排不出回文串;

询问 33xyx 是回文;

询问 44pp是回文;

询问 55a 是回文;

询问 66xy 重排不出回文串;

询问 77x 是回文。

数据范围

对于全部数据 1n,m1041\le n,m\le10^41rin11\le r_i\le n-11xn1\le x\le n

测试点 nmn,m 特殊性质
对于前 20%20 \% 的数据 n10n\leq 10m20m\le 20
对于前 40%40 \% 的数据 n,m1000n,m \leq 1000
对于100%100\%的数据 1n,m1041\le n,m\leq 10^41pi<i1 \le p_i<isis_i 为小写英文字母, 1u,kn1\le u ,k\le n 保证 uu 子树内至少有一个深度为 kk 的结点