【ARC064F】Rotated Palindromes

求有多少个序列满足以下条件:
1. 序列有n位;
2. 序列的每位为1~m之间的整数;
3. 这个序列经过旋转以后可以变成一个回文串;

每个回文串旋转k次后第二次为回文串,那么这个回文串对答案的贡献为k。
那么我们考虑怎样的回文串转k次后为回文串,然后:
如果n%K!=0
设S为Str[0 , k-1],R为S的反串
字符串可以推出是这个样子的:
SSSS…STR…RRRR
中间T长度小于k,发现TR是S与R相交的产物,相交部分是。。。就说明有更小的K
如果n%K==0
可以分n/K奇偶讨论。

猜你喜欢

转载自blog.csdn.net/qq_35950004/article/details/81428818
今日推荐