Ctrl K

Куски поровну из гласных и согласных

Средняя
Дана строка text из строчных латинских букв и положительное число divisor. Гласными считаются буквы a, e, i, o, u, все остальные — согласные. Назовём непустую подстроку (непрерывный кусок строки) **ровной**, если в ней гласных столько же, сколько согласных, и произведение числа гласных на число согласных делится на divisor. Верните количество ровных подстрок. Одинаковые по содержимому куски, стоящие в разных местах строки, считаются разными.
Пример 1
text="moon", divisor=1 → 3

Подходят «mo» (1 гласная, 1 согласная), «on» (1 и 1) и вся строка «moon» (2 и 2). Делитель 1 делит любое произведение.

Пример 2
text="moon", divisor=4 → 1

У «mo» и «on» произведение 1·1 = 1, на 4 не делится. Остаётся только «moon»: 2·2 = 4.

Пример 3
text="xyz", divisor=1 → 0
Ограничения
  • 1 ≤ len(text) ≤ 2000
  • 1 ≤ divisor ≤ 1000
  • text состоит только из строчных латинских букв
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСбалансированные отрезки строки СложнаяКуски с одинаковыми краями СредняяКусочки с заданной пропорцией нулей и единиц СредняяПростые числа на лучах сетки СредняяНОД пар по номеру в сортировке Сложная
загружаем Python…
Вход
text="moon", divisor=1
Ожидается
3

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