hdu3793 判断对称(水题)

题意:
      给你一个串,问你这个串是不是关于某个字母对称的,这个串是一个首位相接的圆。

思路:

      水题,直接枚举每一个为对称点试一下就行了,不解释了。

#include<stdio.h>
#include<string.h>

char str[110];

int main ()
{
    while(~scanf("%s" ,str) && strcmp(str ,"#"))
    {
        int len = strlen(str);
        int mk = -1;
        for(int i = 0 ;i < len ;i ++)
        {
             int q = len / 2;
             int low = i - 1 ,up = i + 1;
             if(low == -1) low = len - 1;
             if(up == len) up = 0;
             while(q--)
             {
                if(str[low] != str[up]) break;
                low -- ,up ++;
                if(low == -1) low = len - 1;
                if(up == len) up = 0;
             }
             if(q == -1)
             {
                mk = i;
                break;
             }
         }
         if(mk == -1) puts("NO");
         else printf("YES %d
" ,mk);
      }
     return 0;
}


原文地址:https://www.cnblogs.com/csnd/p/12062974.html