В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(0\) до \(10~000\) включительно. Определите количество пар чисел, в которых ровно один из двух элементов больше, чем сумма цифр всех чисел в файле, делящихся на \(35,\) а шестнадцатеричная запись другого оканчивается на \(EF.\) В ответе запишите два числа: сначала количество найденных пар, а затем – минимальную сумму элементов таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(z) for z in open('4715.txt')]
n35 = [z for z in nums if z % 35 == 0]
s = sum(sum(int(x) for x in str(z)) for z in n35)
q, min_sum = 0, float('inf')
for x, y in zip(nums, nums[1:]):
if x > s and y <= s and hex(y)[-2:] == 'ef' or y > s and x <=s and hex(x)[-2:] == 'ef':
q += 1
min_sum = min(min_sum, x + y)
print(q, min_sum)
Ответ: \(15 \,\, 6410\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене