# include <stdio.h>
# include <string.h>
# include <ctype.h>
int main()
{
int i,j,n,m;
char c1[999],c2[999],c3[999];
while(scanf("%d",&n)!=EOF)
{
int l=0;
while(n--)
{
int flag = 1;
memset(c1,0,sizeof(c1));
memset(c2,0,sizeof(c2));
memset(c3,0,sizeof(c3));
l++;
scanf("%s",c1);
int len=strlen(c1);
for(i=0,j=len-1;i<j;i++,j--)
{
if(c1[i]!=c1[j])
{
flag = 0;
break;
}
c2[i]=c1[i];
c3[i]=c3[j];
}
if(flag)
{
int flag1=1;
for(i=0,j=len/2-1;i<len/2-1;i++,j--)
{
if(c2[i]!=c2[j]||c3[i]!=c3[j])
{
flag1=0;
break;
}
}
if(flag1)
printf("Case #%d: Double Palindrome\n",l);
else
printf("Case #%d: Single Palindrome\n",l);
}
else
printf("Case #%d: Not Palindrome\n",l);
}
}
return 0;
}
单双回文(简单来说就是把一个回文字符串劈成两个)
最新推荐文章于 2022-01-03 12:53:28 发布