Грані рядка.#8230

Грані рядка.

1 секунда
64 мегабайти
Дуже легка

Гранню рядка називають власний префікс, який дорівнює суфіксу (весь рядок не вважається власним префіксом). Наприклад, рядок T = abaababaabaab має дві непорожні грані: ab та abaab. Аналогічно, рядок T = abaabaab також має дві непорожні грані: ab та abaab, причому друга грань перекриває свій префікс. Рядок з однакових символів має n-1 граней; наприклад, T = aaaaaaaa має грані: a, aa, aaa, aaaa, aaaaa, aaaaaa, aaaaaaa. Довжина грані визначається кількістю символів у ній. Серед усіх граней найбільша грань — це найдовший власний префікс, що дорівнює суфіксу.

Ваше завдання — знайти довжину найбільшої грані заданого рядка .

Вхідні дані

Вхідні дані містять один рядок (1 \leq |T| \leq 10^5), який складається лише з літер латиниці.

Вихідні дані

Виведіть одне ціле число — довжину найбільшої грані.

Приклади

Приклад 1

Loading
Loading