FINDSR  Find String Roots
In mathematics, the Nth root of a number M, is a number K such that K^{N} = M , i.e. KKK ... K = M where K is multiplied N times.
We can translate this into strings. In string notation, the juxtaposition is concatenation instead of multiplication. So, the Nth root of a string S is another string T such that T^{N} = S, where T N = TTT ... T is the string T concatenated N times. For instance, if S = “abcabcabcabc”, for N = 2 the string T = “abcabc” is the Nth root of S, while for N = 4 its Nth root is T = “abc”. Note that for N = 1 any string S is the Nth root of S itself.
Given a string S you have to find the maximum N such that the Nth root of S exists. In the above example the answer would be 4, because there is no Nth root of S = “abcabcabcabc” for N > 4.
Input
The input contains several test cases, each one described in a single line. The line contains a nonempty string S of at most 10^{5} characters, entirely formed of digits and lowercase letters. The last line of the input contains a single asterisk (“*”) and should not be processed as a test case.
Output
For each test case output a single line with the greatest integer N such that there exists a string T that concatenated N times is equal to S.
Example
Input: abcabcabcabc abcdefgh012 aaaaaaaaaa * Output: 4 1 10
hide comments
Vitalis Salis:
20130407 13:45:42
I didn't use any string algorithm, yet got accepted. I could say it is an ad hoc problem. 

Raghavendran Ramachandran:
20121004 13:04:58
www.spoj.pl/problems/PERIOD


Shubham.IIITM:
20120828 18:36:30
Removed After AC


:):
20120623 14:07:50
plz give hint ... 

Grandmaster:
20120517 03:30:41
wow.. cant believe the way it got accepted :P .. a new lesson learned. Last edit: 20120517 03:36:44 

Michael T:
20101029 05:26:33
I guess some string algorithm would be needed then.) Last edit: 20101029 05:27:26 

numerix:
20101026 21:15:14
You can even get it AC with a pure Python solution (without psyco) ... 

Michael T:
20101024 05:25:31
Indeed. Even in python (psyco req though). Last edit: 20101024 05:28:24 
Added by:  Pablo Ariel Heiber 
Date:  20100822 
Time limit:  1s 
Source limit:  50000B 
Memory limit:  1536MB 
Cluster:  Cube (Intel G860) 
Languages:  All except: NODEJS OBJC PERL6 VB.NET 
Resource:  FCEyN UBA ICPC Selection 2009 