#P14830. [THUPC 2026 初赛] 回响形态
[THUPC 2026 初赛] 回响形态
题目背景
来自 2026 清华大学学生程序设计竞赛暨高校邀请赛(THUPC2026)初赛。
题解等资源可在 https://gitlink.org.cn/thusaa/thupc2026pre 查看。
题目描述
请注意本题特殊的时间限制。
给定一个长为 的串 。称子串 的中心是 。
现在你要回答 次询问,每次询问给出一个 ,问所有中心为 的子串的 border 个数之和。
border 的定义如下:一个非空字符串 是另一个字符串 的 border,当且仅当 既是 的前缀,也是 的后缀。例如,对任一个非空串 , 本身就是一个 的 border。
输入格式
从标准输入读入数据。
第一行包含两个正整数 ,表示输入字符串 的长度及询问次数。
第二行包含一个长度为 的字符串 ,由英文小写字母组成。
接下来 行,每行一个整数 ,表示一组询问。
输出格式
输出到标准输出。
输出 行,第 行表示第 个询问的答案。
9 6
bbabbbbaa
2
5
10
11
14
15
1
3
8
9
3
2
提示
【样例 1 解释】
当 时,以 为中心的子串只有 ,border 数为 。
当 时,以 为中心的子串有 ,border 数分别为 。
当 时,以 为中心的子串有 $s[5 \dots 5] = \tt{b}, s[4 \dots 6] = \tt{bbb}, s[3 \dots 7] = \tt{abbbb}, s[2 \dots 8] = \tt{babbbba}, s[1 \dots 9] = \tt{bbabbbbaa}$,border 数分别为 。