4266: 回文
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 1675 Solved: 518
Description
小王想知道一个字符串是否为ABA’型字符串。ABA’型字符串的定义:S=ABA’,A,B,A’都是原字符串的子串(不能是空串),A’的意思是A的反转串,B不一定要和A或A’不同。符合ABA’型的例如:”aba”,”acbbca”,”abcefgcba”等。”Abcefgcba”是ABA’型,因为它能找到一组对应的A(”abc”),B(”efg”)和A’(“cba”)满足定义。
Input
第一行给测试总数T(T <= 1000),接下来有T组测试数据。
每组测试数据有一行字符串S(1 <= |S| <= 50000),字符串保证只有小写或大写英文字母。
Output
每组测试数据输出一行,如果S是ABA’型字符串,输出”YES”,否则输出”NO”。
Sample Input
5
abA
gg
Codeforces
acmermca
myacm
Sample Output
NO
NO
NO
YES
YES
HINT
题意:中文题意,自己看。
解题思路:串的长度大于3并且第一个元素等于最后一个元素就行。
#include<iostream>
#include<stdio.h>
#include<string.h>
using namespace std;
const int maxn = 5e5 + 10;
char s[maxn];
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
scanf("%s",s);
int len = strlen(s);
if(len <= 2||s[0] != s[len - 1]) printf("NO\n");
else printf("YES\n");
}
return 0;
}
/**************************************************************
Problem: 4266
User: creatorx
Language: C++
Result: Accepted
Time:432 ms
Memory:1952 kb
****************************************************************/