решай.ai · шпаргалка
Задание 17: Обработки числовой последовательности
ЕГЭ Информатика
Как выглядит
Типичная формулировка звучит так: «В файле содержится последовательность целых чисел. Элементы последовательности могут принимать значения от до включительно. Определите и запишите в ответе сначала количество пар элементов, удовлетворяющих условию, затем максимальную из сумм элементов таких пар».
Ключевые параметры, которые меняются от варианта к варианту:
- диапазон значений чисел (например, от до или натуральные числа до ); …
Что нужно знать
- Делимость числа на : .
- Остаток от деления: , где для натуральных чисел; при проверке на равенство нулю знак числа не важен ни в одном языке программирования.
- Число пар без повторов из элементов: .
- Пара соседних элементов последовательности — это при ; всего таких пар .
- Логическое «хотя бы одно из двух» — это операция ИЛИ (or), «оба одновременно» — операция И (and).
- Разность двух чисел чётна тогда и только тогда, когда числа имеют одинаковую чётность: .
- Сложность полного перебора всех пар из элементов — ; при это порядка – операций.
- Числа в файле обычно записаны через пробел или каждое на отдельной строке — язык программирования должен уметь читать оба формата.
Алгоритм
- Определить формат входных данных: сколько чисел, в каком диапазоне, как они разделены в файле.
- Прочитать все числа в список (массив) или организовать построчное/поточное чтение.
- Внимательно выделить тип пары — соседние элементы или произвольные два различных элемента без учёта порядка.
- Сформулировать условие на пару в виде логического выражения на языке программирования, точно повторяя формулировку задания (союз «и» — это
and, «хотя бы одно» — этоor). - Организовать цикл (один — для соседних пар, два вложенных — для произвольных пар), на каждом шаге проверять условие.
- При выполнении условия увеличивать счётчик количества пар и сравнивать сумму пары с текущим максимумом, обновляя его при необходимости.
- После завершения цикла вывести два числа: количество и максимальную сумму, разделённые пробелом. …
Ловушки
- Путаница между «соседними» и «произвольными» парами — из-за этого выбирается неверная структура цикла и получается совершенно другой (обычно намного больший) счётчик пар.
- Учёт пары элемента с самим собой при произвольных парах: внутренний цикл должен начинаться с
j = i + 1, а не сj = i, иначе элемент образует пару с собой, что противоречит условию «два различных элемента». - Двойной учёт одной и той же пары: если перебирать
jот0доn-1без ограниченияj > i, каждая пара считается два раза, что искажает и количество, и не влияет на максимум, но портит первое число ответа. - Ошибка off-by-one при построении пар соседних элементов: цикл должен идти до
n-2(индекс) илиn-1раз, а не доn-1включительно, иначе возникнет выход за границы массива. …
reshay.ai/ege/informatika/zadanie-17 — задачи с разборами и тренажёр