На языке C++, используя контейнер vector, выясните два числа в массиве с произведением, которое является максимальным
На языке C++, используя контейнер vector, выясните два числа в массиве с произведением, которое является максимальным. Необходимо написать код без использования вложенных циклов. Входные данные: сначала введите значение n (n ≤ 50000) - количество элементов в массиве. Затем вводятся сами элементы массива - целые числа, модуль которых не превышает 30000. Выходные данные: выведите два искомых числа в порядке возрастания.
Sumasshedshiy_Reyndzher 58
Конечно! Давайте решим эту задачу шаг за шагом.1. Начнем с ввода данных. Для этого мы сначала получим значение n - количество элементов в массиве:
2. Теперь создадим контейнер `std::vector` и заполним его введенными значениями массива:
3. Далее определим переменные, которые будут хранить искомые числа и произведение:
4. Теперь, используя только один цикл, пройдемся по массиву и проверим каждую пару чисел на их произведение. Если найдено бОльшее произведение, обновим значения `maxProduct`, `num1` и `num2`:
5. В результате, в переменных `num1` и `num2` будут храниться два числа с максимальным произведением. Необходимо вывести эти числа в порядке возрастания:
Теперь у нас есть полный код, который находит два числа в массиве с максимальным произведением и выводит их в порядке возрастания. Такой подход, без использования вложенных циклов, позволяет решить задачу более эффективно.