计算题
题号:NC237272
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

你有一个长度为n的字符串,你可以选择删除一段后缀(可以为空),然后修改剩余串中的一个字符,使其变成回文串。请问最后能生成多少种可能的回文串
需要保证整个过程中的字符集仅包含小写字母。其中修改操作必须修改,但可将字符修改为原字符。

输入描述:

第一行输入一个数字n,代表字符串的长度,
第二行输入一行字符串。

输出描述:

一个整数。
示例1

输入

复制
3
abc

输出

复制
30

说明

对于删除后缀长度为0的情况,我们只能修改第一个字符为c,或者修改第三个字符为a2种字符串。
对于删除后缀长度为1的情况,我们只能修改第一个字符为b,或者修改第二个字符为a2种字符串。
对于删除后缀长度为2的情况,我们可以将第一个字符修改为任意小写字符,一共有26种字符串。
所以总共有种情况。
示例2

输入

复制
3
aba

输出

复制
54

说明

对于删除后缀长度为0的情况,我们可以修改成aXa的方式,总共有种字符串
对于删除后缀长度为1的情况,我们只能修改第一个字符为b,或者修改第二个字符为a2种字符串。
对于删除后缀长度为2的情况,我们可以将第一个字符修改为任意小写字符,一共有26种字符串。
所以总共有54种情况。