题意:给你一个字符串,判断是否为镜像串,镜像串的定义:是一个回文串且只能由对称的字母组成,比如W,M,这些,因为要镜像对称;
解题思路:首先判断一下这个字符串是不是全由对称字母组成,不是就不用继续了,如果全由对称字母组成,判断下是否为回文串;
#include<iostream> #include<algorithm> #include<cstring> using namespace std; int main() { char s1[]="WTYUIOAHXVM"; char s[1005]; int flag; int right; int left; int t; int len; int len1; int flag2; cin>>t; while(t--) { cin>>s;flag=0;flag2=0; len=strlen(s); len1=strlen(s1); for(int i=0;i<len;i++) { flag=0; for(int j=0;j<len1;j++) { if(s[i]==s1[j]) { flag=1;break; } } if(flag==0) break; } if(flag==0) cout<<"no "; else { for(int i=0;i<=len/2-1;i++) { if(s[i]!=s[len-i-1]) { flag2=1;break; } } if(flag2==1) cout<<"no "; else cout<<"yes "; } } return 0; }