Задание 17. Информатика. ЕГЭ. ЕГКР. 21.12.2024

Просмотры: 844
Изменено: 18 января 2025

В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек последовательности, в которых хотя бы один элемент является пятизначным числом и оканчивается на \(43,\) а сумма квадратов элементов тройки не больше квадрата максимального элемента последовательности, являющегося пятизначным числом и оканчивающегося на \(43.\) Гарантируется, что такой элемент в последовательности есть. В ответе запишите количество найденных троек, затем минимальную из сумм квадратов элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.

Файл с данными

Решение:

Python


base = ''

nums = [int(x) for x in open(base + '17.txt')]
m43 = max([x for x in nums if 9999 < x < 100_000 and x % 100 == 43])**2
q = 0
min_sum = float('inf')
for tr in zip(nums, nums[1:], nums[2:]):
    if [x for x in tr if 9999 < abs(x) < 100_000 and abs(x) % 100 == 43] \
       and sum(x**2 for x in tr) <= m43:
        q += 1
        min_sum = min(min_sum, sum(x**2 for x in tr))
print(q, min_sum)

Ответ: \(92 \,\, 838850571\)