Ctrl K

Уравновешенные четвёрки с промежутками

Средняя
Дан массив положительных целых чисел values. Назовём четвёрку индексов p < q < r < s уравновешенной, если: - values[p] * values[r] == values[q] * values[s]; - между любыми двумя соседними выбранными индексами есть хотя бы один невыбранный элемент: q - p ≥ 2, r - q ≥ 2, s - r ≥ 2. Верните количество уравновешенных четвёрок. Четвёрки считаются разными, если отличаются хотя бы одним индексом.
Пример 1
values=[2, 9, 3, 9, 6, 9, 4] → 1

Подходит четвёрка индексов (0, 2, 4, 6): 2 · 6 = 3 · 4 = 12, и между соседними индексами есть зазор. Других нет.

Пример 2
values=[1, 2, 3, 4, 5, 6, 7] → 0

При длине 7 возможна только четвёрка (0, 2, 4, 6), но 1 · 5 ≠ 3 · 7.

Пример 3
values=[5, 5, 5, 5, 5, 5, 5, 5] → 5
Ограничения
  • 7 ≤ len(values) ≤ 1000
  • 1 ≤ values[i] ≤ 1000
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиУзлы сетки под кругами СредняяПростые числа на лучах сетки СредняяПростые числа до границы СредняяВертикальная ось симметрии СредняяТройки равноудалённых точек Средняя
загружаем Python…
Вход
values=[2, 9, 3, 9, 6, 9, 4]
Ожидается
1

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