Информатика: ОГЭ и ЕГЭ

Тренировка ЕГЭ · задание 17 · квадрат суммы пары или тройки

Задание 17 ЕГЭ: квадрат суммы пары или тройки

Пары и тройки: квадрат суммы. Тема номера — обработка последовательности из файла. Ниже — пример с ответом и решением; кнопкой под ним можно решить такую же задачу с другими числами, ответ проверится сразу.

Пример

Задание выполняется с использованием прилагаемого файла.

В файле 17.txt содержится последовательность из 6957 целых чисел. Её элементы могут принимать целые значения от −100 000 до 100 000 включительно. Определите количество пар элементов последовательности, в которых оба элемента являются четырёхзначными числами, а квадрат суммы элементов пары больше максимального пятизначного элемента последовательности, запись которого оканчивается на 81.

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

В данной задаче под парой подразумеваются два идущих подряд элемента последовательности. Значность отрицательного числа определяется без учёта знака: например, −1234 — четырёхзначное число.

Запишите два числа через пробел.

Скачать файл к примеру

Ответ64 -17607

Решение

Первым проходом находим опорное число M — наибольший пятизначный элемент, запись которого оканчивается на 81: M = 99 981. Затем перебираем все пары соседних элементов, считаем, сколько в паре четырёхзначных чисел, и сравниваем квадрат суммы с M.

Ответ: 64 -17607.

a = [int(x) for x in open('17.txt')]
def digits(x):
    return len(str(abs(x)))

M = max(x for x in a if digits(x) == 5 and abs(x) % 100 == 81)
sums = []
for i in range(len(a) - 1):
    t = a[i:i + 2]
    k = sum(1 for x in t if digits(x) == 4)
    if k == 2 and sum(t) ** 2 > M:
        sums.append(sum(t))
print(len(sums), min(sums))

Решить такую задачу — новый вариант с проверкой

Задание 17 ЕГЭ: другие виды

Все задачи задания 17 вперемешку · разбор: как решать задание 17 · пробные варианты ЕГЭ