2763: 回文串计数

内存限制:256 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:1 解决:1

题目描述

【题目描述】
虽然是一名理科生,Mcx 常常声称自己是一名真正的文科生。不知为何,他对于背诵
总有一种莫名的热爱,这也促使他走向了以记忆量大而闻名的生物竞赛。然而,他很快发现
这并不能满足他热爱背诵的心,但是作为一名强大的Boer,他找到了这么一条自虐的方式
——背诵基因序列。不过这实在是太虐心了,就连Mcx 也有些招架不住。不过他发现,如
果他能事先知道这个序列里有多少对互不相交的回文串,他或许可以找到记忆的妙法。为了
进一步验证这个方法,Mcx 决定选取一个由小写字母构成的字符串SS 来实验。不过由于互
不相交的回文串实在过多,他很快就数晕了。不过他相信,在你的面前这个问题不过是小菜
一碟。
【名词解释】
1.对于字符串SS,设其长度为Len,那么下文用Si 表示SS 中第i 个字符(1<=i<=Len)
2.s[i,j]表示SS 的一个字串,s[i,j] = “SiSi+1Si+2…Sj-2Sj-1Sj”,比如当SS 为”abcgfd”时,
s[2,5] = “bcgf” , s[1,5] = “abcgf”
3.当一个串被称为一个回文串当且仅当将这个串反写后与原串相同,如”abcba”
4.考虑一个四元组(l,r,L,R) , 当s[l,r]和s[L,R]均为回文串时,且满足1 <= l <=r< L <= R <=
Len 时,我们称s[l,r]和s[L,R]为一对互不相交的回文串。也即本题所求即为这种四元组的个
数。两个四元组相同当且仅当对应的l,r,L,R 都相同。

输入

仅一行,为字符串SS,保证全部由小写字母构成,由换行符标志结束。

输出

仅一行,为一个整数,表示互不相交的回文串的对数。

样例输入 复制

aaa

样例输出 复制

5

提示

【样例解释】
SS = “aaa” , SS 的任意一个字串均为回文串,其中总计有5 对互不相交的回文串:
(1,1,2,2) , (1,1,2,3) , (1,1,3,3) , (1,2,3,3) , (2,2,3,3). (这里使用名词解释中的四元组进行
表示)
【数据范围】
50%的数据满足SS 的长度不超过200
100%的数据满足SS 的长度不超过2000