Задача 5: Самая большая подстрока между двумя равными символами

Напишите определение функции longestSubstringBetweenEqualCharacters(s), которая принимает один аргумент:

  • s (строка) — строка, в которой нужно найти длину самого длинного подстрока между двумя одинаковыми символами.

Функция должна вернуть целое число, представляющее длину самого длинного подстрока между двумя одинаковыми символами, исключая сами символы. Если таких подстрок не существует, верните -1.


Примеры:

Пример 1:

Входные данные:
s = "aa"

Выходные данные:
0

Пояснение:
Оптимальная подстрока здесь — пустая подстрока между двумя символами 'a'.


Пример 2:

Входные данные:
s = "abca"

Выходные данные:
2

Пояснение:
Оптимальная подстрока здесь — "bc", длина которой равна 2.


Пример 3:

Входные данные:
s = "cbzxy"

Выходные данные:
-1

Пояснение:
В строке нет символов, которые встречаются дважды.


Визуализация работы на примерах:

Пример 1:

s = "aa"

Индекс:    0 1
Символы:   a a
           ^ ^
Подстрока: (пустая)

Результат: 0.


Пример 2:

s = "abca"

Индекс:    0 1 2 3
Символы:   a b c a
           ^     ^
Подстрока: b c

Результат: 2.


Пример 3:

s = "cbzxy"

Индекс:    0 1 2 3 4
Символы:   c b z x y
(Нет повторяющихся символов)

Результат: -1.

0

Комментарии

xsnm_avatar
xsnm
,
5 месяцев, 13 дней назад
  • s (строка) — строка, в которой нужно найти длину самого длинного подстрока между двумя одинаковыми символами.
0

Вы должны Войти или Зарегистрироваться чтобы оставлять комментарии