码迷,mamicode.com
首页 > 其他好文 > 详细

水题---判断镜像串和倒叙串

时间:2020-04-07 18:12:43      阅读:68      评论:0      收藏:0      [点我收藏+]

标签:namespace   条件   题解   print   转换   stream   net   bsp   clu   

题目链接:https://vjudge.net/problem/UVA-401

题意:判断是否为镜像串和倒序串

题解:分别判断即可:倒叙串逆序判断是否相等

                                    镜像串列出两个字符串判断是否相等

注意:1.注意输出格式,每一个输出后有一个空格  

           2.判断镜像串满足条件有两个:一是是否在该字符串中,二是是否相等,缺一不可

          3.C++的字符长度用.length()来求, strlen是计算char */char[]的,string非要用,需要用 c_str()转换成char * cout << strlen(s.c_str()),类似的也包括输出字符串%s

ac代码

#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
using namespace std;
int main()
{
    char ch[]="AEHIJLMOSTUVWXYZ12358";
    char ch2[]="A3HILJMO2TUVWXY51SEZ8";
    string s;
    while(getline(cin,s))
    {
        int j,f1=1,f2=1;
        int len=s.length();
        for(int i=0;i<=len/2;i++)
            if(s[i]!=s[len-i-1])
        {
            f1=0;
            break;
        }
        for(int i=0;i<=len/2;i++)
        {
            for(j=0;ch[j]!=0;j++)
                if(ch[j]==s[i]) break;
            if(!ch[j]||ch2[j]!=s[len-i-1]) f2=0;
        }
        cout<<s;
        if(f1&&f2) printf(" -- is a mirrored palindrome.\n",s);
        else if(!f1&&f2) printf(" -- is a mirrored string.\n",s);
        else if(f1&&!f2) printf(" -- is a regular palindrome.\n",s);
        else printf(" -- is not a palindrome.\n",s);
        cout<<endl;
    }
    return 0;
}

    

水题---判断镜像串和倒叙串

标签:namespace   条件   题解   print   转换   stream   net   bsp   clu   

原文地址:https://www.cnblogs.com/Joe2019/p/12654893.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!