Решение: Подсчёт троек в последовательности
В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от $-100\,000$ до $100\,000$ включительно. Определите количество троек элементов последовательности, в которых ровно два из трёх элементов являются трёхзначными числами, а сумма элементов тройки не больше максимального элемента последовательности, оканчивающегося на 21. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
В ответе запишите сначала количество найденных троек чисел, затем максимальную из сумм элементов таких троек. Для обработки используйте прилагаемый файл.
Решение по шагам
5 шаговСчитать из файла всю последовательность целых чисел.
Среди элементов последовательности найти максимальный элемент, оканчивающийся на 21. Для неотрицательных чисел это проверяется условием $x \bmod 100 = 21$.
Перебрать все тройки соседних элементов $a_i$, $a_{i+1}$, $a_{i+2}$.
Для каждой тройки посчитать количество трёхзначных элементов по условию $100 \leq |x| \leq 999$ и оставить тройку, если это количество равно двум.
Вычислить сумму элементов подходящей тройки. Если сумма не больше найденного максимального элемента, увеличить количество троек и обновить максимальную сумму.
Точный ответ определяется содержимым прилагаемого файла.
Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Проверяют ровно два трёхзначных элемента как минимум или как максимум, а не как точное количество.
Рассматривают произвольные сочетания элементов вместо троек из трёх соседних элементов.
Ищут максимальный элемент, оканчивающийся на 21, среди сумм троек, хотя требуется элемент исходной последовательности.
Забывают отдельно обновить максимальную сумму среди подходящих троек.