Задание 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))