Advertisement
userwei

袁 P01

Feb 20th, 2024
752
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.11 KB | None | 0 0
  1. int32_t main(){
  2.     string s;
  3.     while((cin>>s)){
  4.         int len=s.size(),count=0;
  5.         char a[len];
  6.         bool pa=true;
  7.         strcpy(a,s.c_str());
  8.         for(int i=0;i<len;i++){
  9.             switch(a[i]){
  10.                 case 'A':case 'H':case 'M':case 'I':case 'O':case 'T':case 'U':case 'V':case 'W':case 'X':case 'Y':case '1':case '8':
  11.                     count++;
  12.                     break;
  13.             }
  14.         }
  15.         for(int i=0;i<len;i++){
  16.             int tail=len-1-i;
  17.             if(a[i]!=a[tail]){
  18.                 pa=false;
  19.                 switch (a[i]){
  20.                     case 'E':
  21.                         if(a[tail]=='3')
  22.                             count++;
  23.                         break;
  24.                     case 'J':
  25.                         if(a[tail]=='L')
  26.                             count++;
  27.                         break;
  28.                     case 'L':
  29.                         if(a[tail]=='J')
  30.                             count++;
  31.                         break;
  32.                     case 'S':
  33.                     if(a[tail]=='2')
  34.                             count++;
  35.                         break;
  36.                     case 'Z':
  37.                         if(a[tail]=='5')
  38.                             count++;
  39.                         break;
  40.                     case '2':
  41.                         if(a[tail]=='S')
  42.                             count++;
  43.                         break;
  44.                     case '3':
  45.                         if(a[tail]=='E')
  46.                             count++;
  47.                         break;
  48.                     case '5':
  49.                         if(a[tail]=='Z')
  50.                             count++;
  51.                         break;
  52.                 }
  53.             }    
  54.         }
  55.         if(pa==true){
  56.             if(count==len)
  57.                 cout<<s<<" -- is a mirrored palindrome.\n";
  58.             else
  59.                 cout<<s<<" -- is a regular palindrome.\n";
  60.         }
  61.         else if(count==len)
  62.             cout<<s<<" -- is a mirrored string.\n";
  63.         else
  64.             cout<<s<<" -- is not a palindrome.\n";
  65.     }
  66.  
  67.     return 0;
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement