25

Решение: Поиск максимального произведения

ЕГЭ · Информатика · Задание 25 · Массивы и строки
ПовышеннаяФИПИ38240DРазвёрнутое решение≈ 5 минутРазбор в 5 шагов
Условие

Опишите на русском языке или одном из языков программирования алгоритм поиска номера первого из двух последовательных элементов в целочисленном массиве из 30 элементов, произведение которых максимально. Если таких пар несколько, можно выбрать любую из них.

Открыть задачу и решить самому
Дальше ответЕсли ещё решаете — начните с подсказок: они ведут к ответу, но не выдают его.
К подсказкам

Решение по шагам

5 шагов
1

В массиве из 30 элементов имеется 29 пар последовательных элементов: $(a_1,a_2)$, $(a_2,a_3)$, ..., $(a_{29},a_{30})$.

2

Сначала принимаем произведение первой пары за максимальное и запоминаем номер первого элемента этой пары: $maxProduct = a_1 \cdot a_2$, $answer = 1$.

3

Затем перебираем номера первых элементов остальных пар от 2 до 29. Для каждой пары вычисляем $p = a_i \cdot a_{i+1}$.

4

Если $p > maxProduct$, заменяем значение максимального произведения на $p$ и запоминаем номер $i$. При равенстве можно ничего не менять, поэтому будет выбрана любая из пар с максимальным произведением.

После завершения цикла выводим сохранённый номер первого элемента искомой пары. Алгоритм выполняет 29 сравнений и имеет сложность $O(n)$, а для массива из 30 элементов использует постоянный объём дополнительной памяти.

Ответ

Перебрать пары $(a_i, a_{i+1})$ для $i$ от 1 до 29, сохранить максимальное произведение и номер $i$; вывести сохранённый номер.

Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.

Где здесь ошибаются

Проверяют только отдельные элементы, а не произведения соседних пар.

Перебирают индекс до 30 и обращаются к несуществующему элементу $a_{31}$.

Инициализируют максимум нулём, из-за чего алгоритм может ошибиться, если все произведения отрицательны.

Выводят номер второго элемента пары вместо номера первого.

Сравнивают только абсолютные значения произведений, хотя требуется максимальное обычное произведение.

Закрепить приёмВ теме «Массивы и строки» ещё 237 задач — с ответом и таким же разбором.
Тренироваться

Как решать задание 25 ЕГЭ, информатика

Разбор этой задачи разложен на 5 шагов: видно, откуда берётся каждое число и где теряется балл. Ответ приведён рядом с выкладками, а не вместо них.

Задача из темы «Массивы и строки»: в ней 238 задач, и у каждой есть такой же разбор. Регистрация не нужна.