logo AlgoBeat OnlineJudge
登录 注册

#102894. [BZOJ 2894] 世界线

内存限制:256 MiB 时间限制:10000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: 匿名

题目描述

有一棵 个节点的树,树上的每个节点有一个小写字母。

定义一个 树上子串 为从某个节点向子节点移动若干步,把路径上的字母拼起来得到的字符串。

现在你需要求出有多少个本质不同的 树上子串 以及回答 次形如「在所有本质不同的树上子串中,字典序第 小的 树上子串 是什么」的询问。

输入格式

第一行两个整数

第二行 个小写字母,第 个字母表示结点 上的字母。

接下来 行,每行两个点 表示树上一条 之间的边。

接下来 行,每行一个整数 表示一个询问。

输出格式

第一行一个整数表示本质不同的树上子串个数。

接下来 行,每行依次表示一个询问的答案。

特殊的,若 请直接输出一个空行;否则若不存在字典序为 的子串,输出一行一个 -1

样例

样例输入 #1

8 1
abcbbaca
1 2
2 3
1 4
4 5
4 6
4 7
1 8 
5

样例输出 #1

12
aba

数据范围与提示

对于 的数据,

对于另外 的数据,树的形态是一条链;

对于 的数据,