Решение: Анализ пар последовательности
Задание выполняется с использованием прилагаемых файлов. В файле содержится последовательность натуральных чисел. Элементы последовательности могут принимать целые значения от 1 до 100 000 включительно. Определите количество пар последовательности, в которых остаток от деления хотя бы одного из элементов на 11 равен минимальному элементу последовательности. В ответе запишите количество найденных пар, затем максимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение по шагам
4 шагаСчитываем все числа из файла и находим минимальный элемент последовательности.
$$m = \min(a_1, a_2, \ldots, a_n)$$Перебираем все пары соседних элементов $(a_i, a_{i+1})$ при $1 \leq i < n$.
Пара учитывается, если остаток от деления хотя бы одного её элемента на 11 равен минимуму последовательности.
$$(a_i \bmod 11 = m) \lor (a_{i+1} \bmod 11 = m)$$Для каждой подходящей пары увеличиваем количество пар и сравниваем её сумму с текущим максимумом.
$$s_i = a_i + a_{i+1}$$Вывести количество подходящих пар и максимальную сумму элементов такой пары.
Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Проверяют пары любых элементов вместо двух соседних.
Сравнивают с минимумом только один элемент пары.
Ищут минимум среди остатков, а не среди исходных элементов последовательности.
Не обновляют максимальную сумму после нахождения подходящей пары.