[BOJ 13748] Periodic Strings

View as PDF

Submit solution

Points: 2
Time limit: 2.0s
Memory limit: 512M

Problem types
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text

Define a $k$-periodic string as follows:</p>

A string $s$ is $k$-periodic if $|s|$, the length of the string, is a multiple of $k$ and, if you chop the string up into $|s|/k$ substrings of length $k$, then each of those substrings (except the first) is the same as the previous substring, but with its last character moved to the front.

For example, the following string is $3$-periodic:

abccabbcaabc

The above string breaks up into substrings abc, cab, bca, and abc, and each substring (except the first) is a rotation of the previous substring (abc $\rightarrow$ cab, cab $\rightarrow$ bca, bca $\rightarrow$ abc).

Given a string, determine the smallest $k$ for which the string is $k$-periodic.

입력 형식

Input will be a single line containing a string $s$, ($1 \leq |s| \leq 100$), consisting only of lower-case letters.

출력 형식

Print a single line containing an integer denoting the smallest value of $k$ for which the input string is $k$-periodic.

예제 입력 1

aaaaaaaa

예제 출력 1

1

예제 입력 2

abbaabbaabba

예제 출력 2

2

예제 입력 3

abcdef

예제 출력 3

6

예제 입력 4

abccabbcaabc

예제 출력 4

3

Comments

There are no comments at the moment.