Ctrl K

Окна со всеми гласными

Средняя
Лингвист изучает длинный текст text, записанный строчными латинскими буквами без пробелов. Его интересуют непрерывные фрагменты, в которых есть каждая из гласных a, e, i, o, u (хотя бы по разу), а согласных — ровно k. Согласная — любая буква, кроме пяти гласных. Верните количество таких фрагментов. Фрагменты на разных позициях считаются разными, даже если совпадают по буквам. Текст длинный, так что перебор всех фрагментов не уложится по времени.
Пример 1
text="sequoia", k=1 → 1

Подходит только «equoia»: все пять гласных и одна согласная q. Если добавить s, согласных станет две.

Пример 2
text="ouiaexe", k=1 → 2

Обе подстроки начинаются с первой буквы: «ouiaex» и «ouiaexe». В обеих одна согласная x.

Пример 3
text="taeioutt", k=2 → 2

«taeiout» и «aeioutt» — в каждой ровно две согласные.

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

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