#270. 回文拼接
回文拼接
回文拼接
题目描述
一个字符串是回文串,当且仅当该字符串从前往后读和从后往前读是一样的,例如, 和 都是回文串,但 不是。
小杨有 个仅包含小写字母的字符串,他想请你编写程序判断每个字符串是否由两个长度至少为 的回文串前后拼接而成。
输入格式
第一行包含一个正整数 ,代表字符串数量。
接下来 行,每行一个仅包含小写字母的字符串。
输出格式
对于每个字符串输出一行,如果该字符串由两个长度至少为 的回文串前后拼接而成则输出 Yes,否则输出 No。
样例输入
4
abcd
aabbb
aaac
abcdd
样例输出
No
Yes
No
No
样例解释
对于样例输入中的 个字符串,逐个判断如下:
- 第一个字符串
abcd:需要切成前后两部分且每部分长度至少为 。唯一可能的分法是ab与cd。ab倒过来是ba,不是回文;cd也不是回文。因此不满足条件,输出No。 - 第二个字符串
aabbb:可以切成aa和bbb。aa正反读相同,是回文;bbb正反读也相同,是回文。两部分长度都至少为 ,满足条件,输出Yes。 - 第三个字符串
aaac:可能的分法有aa与ac,或者aaa与c。aaa与c中后一部分长度只有 ,不满足长度至少为 的要求;aa是回文,但ac不是回文。因此不满足,输出No。 - 第四个字符串
abcdd:唯一长度满足的分法是ab与cdd,或者abc与dd。ab不是回文;abc与dd中前一部分长度不足 。因此不满足,输出No。
数据范围
对全部的测试数据,保证 ,且每个字符串的长度均不超过 。