zl程序教程

您现在的位置是:首页 >  其它

当前栏目

hdu3793 判断对称(水题)

判断 对称 水题
2023-09-11 14:13:59 时间
题意:
      给你一个串,问你这个串是不是关于某个字母对称的,这个串是一个首位相接的圆。

思路:

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

#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\n" ,mk);
      }
     return 0;
}