首页 > 其他 > 详细

题解 AT2201 【鏡文 / Mirror String】

时间:2019-10-07 00:22:17      阅读:76      评论:0      收藏:0      [点我收藏+]

一道简单的字符串模拟,刷难度真给力

本蒟蒻的思路比较麻烦,但个人认为比较好理解

  • 1 先将字符串倒序存放

  • 2 按照规则改变字母

  • 3 比较

Code:

#include<bits/stdc++.h>
using namespace std;
char s1[100010],s2[100010];
int len;
int main()
{
    cin>>s1;
    for(int i=strlen(s1)-1; i>=0; i--)
    {
        s2[len++]=s1[i];//倒序存放
    }
    for(int i=0; i<strlen(s2); i++)
    {
        switch(s2[i])//按照规则改变字母
        {
            case 'b':
            {
                s2[i]='d';
                break;
            }
            case 'd':
            {
                s2[i]='b';
                break;
            }
            case 'p':
            {
                s2[i]='q';
                break;
            }
            case 'q':
            {
                s2[i]='p';
                break;
            }
        }
    }
    if(strcmp(s1,s2)==0) cout<<"Yes"<<endl;//比较,注意如果两个字符串一样,strcmp返回0
    else cout<<"No"<<endl;//记得换行
    return 0;
}

题解 AT2201 【鏡文 / Mirror String】

原文:https://www.cnblogs.com/WKAHPM/p/11628886.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!