Uva455 Periodic Strings

xiaoxiao2021-02-28  44

#include<stdio.h> #include<string.h> #define maxn 85 char a[maxn]; int main() {       int n,length;       scanf("%d",&n);       while(n--){           scanf("%s",a);           length=strlen(a);           for(int i = 1;i<=length;i++)           {              int flag = 1;              if (length%i==0)              {                    for(int j = i ; j< length ; j++)                    {                           if(a[j] != a[j%i])                           {                                flag = 0;                                break;                           }                    }             }               if(flag) printf("%d\n",i);             }               if(n)     printf("\n");       } } /*      1. 注意周期问题,如果没有相同字符串,则周期为字符串的长度          ☆一开始没有清楚这个问题导致程序无法AC。      2. 主要思想:因为长度%周期就得到重复字符串的开头,直接遍历所有长度即可。 */
转载请注明原文地址: https://www.6miu.com/read-2625796.html

最新回复(0)