11965. Функція від рядка
Відправити розв'язок
Бали:
100
Time limit:
2.0s
Memory limit:
500M
Authors:
Problem type
Allowed languages
C++, Java, Pascal, Python
Оксана більше за все любить працювати з рядками.
У неї є рядок \(T\) і вона вміє знаходити функцію \(f\) від рядка \(s\):
\(f(s) = |s| \times \) (кількість \(s\) в \(T\))
Сьогодні Оксана шукає максимальне значення серед усіх підрядків рядка \(T\).
Допоможіть Оксані розв'язати цю задачу - складіть відповідну програму.
Формат вхідних даних
Вхідний потік містить рядок \(T\).
Формат вихідних даних
У вихідний потік вивести максимальне значення \(f(s)\) серед усіх підрядків \(s\) рядка \(T\).
Обмеження
\(1 \le T \le 10^5\)
\(T\) містить символи проміжку ['a'..'z']
Пояснення прикладів
Тест 1
- f('a') = 6
- f('aa') = 10
- f('aaa') = 12
- f('aaaa') = 12
- f('aaaaa') = 10
- f('aaaaaa') = 6
Максимальне значення дорівнює 12 \
Тест 2 Значення f(s) кількох підрядків:
- f('a') = 2
- f('b') = 2
- f('c') = 2
- f('ab') = 4
- f('bc') = 4
- f('ddd') = 3
- f('abc') = 6
- f('abcabcddd') = 9
Максимальне значення дорівнює 9
Приклад вхідних даних
aaaaaa
Приклад вихідних даних
12
Приклад вхідних даних
abcabcddd
Приклад вихідних даних
9
Коментарі