문자열 제곱

시간 제한1초메모리 제한256 MB

문제

소문자 알파벳으로 이루어진 두 문자열 $a$와 $b$에 대해, $a * b$는 두 문자열을 이어 붙인 결과를 뜻한다. 예를 들어 $a=\texttt{abc}$, $b=\texttt{def}$이면 $a * b=\texttt{abcdef}$이다.

이 이어 붙이기를 곱셈으로 본다면, 음이 아닌 정수 지수의 거듭제곱도 다음과 같이 정의할 수 있다.

  • $a^0 = \varepsilon$ (빈 문자열)
  • $a^{n+1} = a * a^n$

문자열 $s$가 주어질 때, $s = a^n$을 만족하는 문자열 $a$가 존재하도록 하는 가장 큰 $n$을 구하는 프로그램을 작성하시오.

입력

입력은 최대 10개의 테스트 케이스로 이루어진다. 각 테스트 케이스는 문자열 $s$ 하나가 적힌 한 줄이다. $s$의 길이는 1 이상 1,000,000 이하이다. 마지막 테스트 케이스 다음 줄에는 마침표(.) 하나만 주어진다.

출력

각 테스트 케이스마다 $s = a^n$을 만족하는 가장 큰 $n$을 한 줄에 하나씩 출력한다.