Ctrl K

Отрезки с заданным НОД

Средняя
Дан массив натуральных чисел values и число divisor. Посчитайте, у скольких непустых отрезков (подряд идущих кусков массива) наибольший общий делитель всех элементов равен ровно divisor. НОД набора чисел — наибольшее натуральное число, на которое делится каждое из них. Отрезки с разными границами считаются разными.
Пример 1
values=[12, 8, 6, 5, 4], divisor=4 → 2

НОД ровно 4 у отрезков [12, 8] и [4]. У [8] НОД равен 8, а как только в отрезок попадает 6, НОД падает до 2.

Пример 2
values=[7, 7], divisor=7 → 3

У всех трёх отрезков — [7], [7] и [7, 7] — НОД равен 7.

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

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