Codeforces Round 385 (Div. 2) |
---|
Закончено |
Коровоконг учится произносить слова! Однажды учитель дал ему новое слово, которое необходимо научиться правильно произносить. Будучи исполнительным студентом, Коровоконг сразу же выполнил задание.
Теперь Коровоконг хочет образовать новые слова, используя данное. Для этого он берёт текущее слово и переставляет его последнюю букву в начало. Такую операцию он называет циклическим сдвигом. Он может применить эту операцию произвольное количество раз, например, последовательно применяя циклический сдвиг к слову «abracadabra», он получит слова «aabracadabr», «raabracadab» и так далее.
Теперь Коровоконг хочет знать, сколько различных слов он может получить, применяя операцию циклического сдвига. Изначальную строку также необходимо учитывать.
В первой строке входных данных записана строка s (1 ≤ |s| ≤ 50) — слово, которое даётся Коровоконгу в самом начале. Строка s содержит только маленькие буквы английского алфавита («a»–«z»).
Выведите одно целое число, равное количеству различных строк, которые можно получить, применяя операцию циклического сдвига к строке из входных данных.
abcd
4
bbb
1
yzyz
2
В первом примере Коровоконг может получить строки «abcd», «dabc», «cdab» и «bcda».
Во втором примере не имеет значения, сколько раз Коровоконг применит операцию циклического сдвига, он сможет получить только строку «bbb».
В третьем примере Коровоконг может получить две строки «yzyz» и «zyzy».
Название |
---|