Ctrl K

Окна без повторов

Средняя
Дана строка text из строчных латинских букв и число width. Посчитайте, сколько её подстрок длины width (окон, идущих подряд) состоят из попарно различных букв. Окна, начинающиеся в разных позициях, считаются разными, даже если совпадают по содержанию. Если width больше длины строки, ответ — 0.
Пример 1
text="banana", width=2 → 5

Окна: ba, an, na, an, na — во всех пяти буквы разные. Одинаковые по содержанию окна на разных местах считаются отдельно.

Пример 2
text="letter", width=3 → 2

Окна let, ett, tte, ter — подходят только let и ter.

Пример 3
text="abc", width=5 → 0

Окно длиннее строки не помещается.

Ограничения
  • 1 ≤ len(text) ≤ 10⁵
  • 1 ≤ width ≤ 10⁵
  • text состоит из строчных латинских букв
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСамый длинный фрагмент без повторов СредняяОтрезок из двух букв СредняяПовторяющиеся участки гена СредняяОкно с ограниченным набором букв СредняяКаждая буква не реже k раз Средняя
загружаем Python…
Вход
text="banana", width=2
Ожидается
5

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 102 теста на сервере, включая скрытые.