k-주기 문자열을 다음과 같이 정의한다.
문자열 s의 길이 ∣s∣가 k의 배수이고, s를 길이가 k인 ∣s∣/k개의 조각으로 자를 때 첫 조각을 뺀 모든 조각이 바로 앞 조각의 마지막 글자를 맨 앞으로 옮긴 문자열과 같으면, s를 k-주기 문자열이라고 한다.
예를 들어 abccabbcaabc는 3-주기 문자열이다. 이 문자열은 abc, cab, bca, abc로 잘리고, 첫 조각을 뺀 각 조각은 앞 조각을 한 글자씩 회전시킨 결과다 (abc → cab, cab → bca, bca → abc).
문자열 s가 주어질 때, s가 k-주기 문자열이 되는 가장 작은 k를 구하라.