(М. Шагитов) В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(0\) до \(10~000.\) Найдите все пары элементов последовательности, в которых произведение чисел пары в двоичной записи содержит сочетание цифр \(101010,\) а сумма чисел пары больше, чем среднее арифметическое всех чисел в файле. В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('5180.txt')]
avg = sum(nums) / len(nums)
q, ms = 0, float('inf')
for pair in zip(nums, nums[1:]):
if '101010' in bin(pair[0] * pair[1]) and sum(pair) > avg:
q += 1
ms = min(ms, sum(pair))
print(q, ms)
Ответ: \(2105 \,\, 5211\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене