Pabon_SEC

Power Strings

Apr 11th, 2016
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.66 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. #define mx 1000005
  3.  
  4. using namespace std;
  5.  
  6. char text[mx];
  7.  
  8. int len;
  9.  
  10. bool compute_prefix(int i)
  11. {
  12.     for(int j=i; j<len; j++)
  13.     {
  14.         if(text[j]!=text[j%i])
  15.         {
  16.             return false;
  17.         }
  18.     }
  19.  
  20.     return true;
  21. }
  22.  
  23. int main()
  24. {
  25.  
  26.     int i;
  27.  
  28.     while(scanf("%s",text) && text[0]!='.')
  29.     {
  30.         len = strlen(text);
  31.  
  32.         for(i=1; i<=len; i++)
  33.         {
  34.             if(!(len%i))
  35.             {
  36.                 if(compute_prefix(i))
  37.                 {
  38.                     break;
  39.                 }
  40.             }
  41.         }
  42.  
  43.         printf("%d\n",len/i);
  44.  
  45.     }
  46.  
  47.     return 0;
  48. }
Advertisement
Add Comment
Please, Sign In to add comment