(И. Кушнир) В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от \(1000\) до \(9999\) включительно. Обозначим через \(M\) минимальное число в последовательности, кратное \(43.\) Определите количество пар последовательности, в которых либо сумма чисел кратна \(M,\) либо хотя бы в одном из чисел последняя цифра совпадает с последней цифрой числа \(M.\) Гарантируется, что такая пара в последовательности есть. В ответе запишите количество найденных пар, затем максимальное из чисел, которые являются элементами таких пар. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('5283.txt')]
M = min(x for x in nums if x % 43 == 0)
q, mn = 0, 0
for a, b in zip(nums, nums[1:]):
if (a + b) % M == 0 or any(x % 10 == M % 10 for x in (a, b)):
q += 1
mn = max(mn, max(a, b))
print(q, mn)
Ответ: \(1898 \,\, 9984\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене