В файле содержится последовательность целых чисел, по модулю не превышающих \(10000.\) Определите количество пар элементов последовательности, в которых запись только одного элемента из двух заканчивается цифрой \(3,\) а сумма квадратов элементов пары меньше, чем квадрат наименьшего из всех элементов последовательности, запись которых заканчивается цифрой \(3.\) В ответе запишите два числа: сначала количество найденных пар, затем максимальную сумму квадратов элементов этих пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('6064.txt')]
m3 = min(x for x in nums if abs(x) % 10 == 3)
m3sq = m3 ** 2
q, ms = 0, 0
for a, b in zip(nums, nums[1:]):
if (abs(a) % 10 == 3) != (abs(b) % 10 == 3) and a**2 + b**2 < m3sq:
q += 1
ms = max(ms, a**2 + b**2)
print(q, ms)
Ответ: \(714 \,\, 98385445\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене