1332: Грані рядка

Перегляд у форматі PDF

Надіслати розв'язок

Бали: 16
Time limit: 1.0s
Memory limit: 64M

Author:
Problem type

Гранню рядка \(Т\) назвемо власний префікс, який рівний суфіксу

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

Формат вхідних даних

Єдиний рядок вхідного стандартного потоку містить рядок \(Т\) \((1 ≤ size(Т) ≤ 10^5)\)- усі символи якого - це літери латиниці.

Формат вихідних даних

У єдиний рядок вихідного стандартного потоку вивести одне число – довжину найбільшої грані.

Приклад вхідних даних

abaabaab

Приклад вихідних даних

5

Коментарі

Ще немає коментарів.