#abc249e. [abc249_e]RLE
[abc249_e]RLE
题目描述
考虑以下过程,给定一个由小写英文字母组成的字符串 :
- 在相邻两个不同字符的位置将字符串 切分开。
- 对每个被切分出来的字符串 ,用由 组成的字符后面跟着 的长度的字符串替换它。
- 按原来的顺序连接替换后的字符串。
例如,aaabbcccc
被分割为 aaa
、bb
、cccc
,分别被替换为 a3
、b2
、c4
,然后按原来的顺序连接,得到 a3b2c4
。如果给定的字符串是 aaaaaaaaaa
,则新的字符串是 a10
。
找到长度为 、由小写英文字母组成的字符串 的数量,满足按照上述过程得到的字符串 的长度小于 的长度。
约束条件
- 和 是整数。
- 是质数。
输入
输入数据从标准输入获得,格式如下:
输出
打印答案。
示例输入 1
3 998244353
示例输出 1
26
满足条件的字符串是那些第 、 和 个字符都相同的字符串。
例如,aaa
变成 a3
,满足条件,而 abc
变成 a1b1c1
,不满足条件。
示例输入 2
2 998244353
示例输出 2
0
请注意,如果一个字符串被转换为长度相同的另一个字符串,例如 aa
变成 a2
,它不满足条件。
示例输入 3
5 998244353
示例输出 3
2626
满足条件的字符串包括 aaabb
和 aaaaa
。
示例输入 4
3000 924844033
示例输出 4
607425699
找到满足条件的字符串的数量(模 )。