• CodeForces


    Time Limit: 1000MS   Memory Limit: 262144KB   64bit IO Format: %I64d & %I64u

     Status

    Description

    Recently, a start up by two students of a state university of city F gained incredible popularity. Now it's time to start a new company. But what do we call it?

    The market analysts came up with a very smart plan: the name of the company should be identical to its reflection in a mirror! In other words, if we write out the name of the company on a piece of paper in a line (horizontally, from left to right) with large English letters, then put this piece of paper in front of the mirror, then the reflection of the name in the mirror should perfectly match the line written on the piece of paper.

    There are many suggestions for the company name, so coming up to the mirror with a piece of paper for each name wouldn't be sensible. The founders of the company decided to automatize this process. They asked you to write a program that can, given a word, determine whether the word is a 'mirror' word or not.

    Input

    The first line contains a non-empty name that needs to be checked. The name contains at most 105 large English letters. The name will be written with the next sans serif font:

    Output

    Print 'YES' (without the quotes), if the given name matches its mirror reflection. Otherwise, print 'NO' (without the quotes).

    Sample Input

    Input
    AHA
    Output
    YES
    Input
    Z
    Output
    NO
    Input
    XO
    Output
    NO

    Source

    输入一个字符串,如果字符串中的字符对称,比如长度为5的c[0]c[4]一样,c[1]c[3]一样,并且串中所有字符都是中间对称的,输出YES。
    #include <iostream>
    #include <algorithm>
    #include <stdio.h>
    #include <math.h>
    #include <string.h>
    #include <stdlib.h>
    using namespace std;
    int main()
    {
        char c[100050];
        int i,n;
        while(cin>>c)
        {
            int len=strlen(c);
            int flag=0;
            for(i=0;i<=len/2;i++)
            if(c[i]!=c[len-1-i]||(c[i]!='A'&&c[i]!='H'&&c[i]!='I'&&c[i]!='M'&&c[i]!='O'&&c[i]!='T'&&c[i]!='U'&&c[i]!='V'&&c[i]!='W'&&c[i]!='X'&&c[i]!='Y'))
            {
                flag=1;
                break;
            }
        if(flag)
        cout<<"NO"<<endl;
        else
        cout<<"YES"<<endl;
    
        }
        return 0;
    }
  • 相关阅读:
    【LeetCode】3Sum Closest 解题报告
    LOJ#6277. 数列分块入门 1
    洛谷P1919 【模板】A*B Problem升级版(FFT快速傅里叶)
    LOJ #108. 多项式乘法
    快速傅里叶变换(FFT)详解
    HDU 5536 Chip Factory
    洛谷P4093 [HEOI2016/TJOI2016]序列
    洛谷P2633 Count on a tree
    HDU 4825 Xor Sum
    洛谷T21778 过年
  • 原文地址:https://www.cnblogs.com/Ritchie/p/5425170.html
Copyright © 2020-2023  润新知