#abc249e. E - RLE
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
找到满足条件的字符串数量,模 。