(О. Лысенков) В файле содержится последовательность натуральных чисел, не превышающих \(10~000.\) Определите количество четвёрок последовательности, в которых ровно два элемента больше максимального элемента последовательности, оканчивающегося на \(37,\) и ровно один элемент оканчивается на \(2\) одинаковые цифры. В ответе запишите количество найденных четвёрок, а затем сумму только тех элементов найденных четвёрок, которые оканчиваются на \(2\) одинаковые цифры. В данной задаче под четвёркой подразумевается четыре идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8469.txt')]
m37 = max([x for x in nums if x % 100 == 37])
q, s = 0, 0
for ch in zip(nums, nums[1:], nums[2:], nums[3:]):
snum = [str(x) for x in ch]
a1 = [x for x in ch if x > m37]
a2 = [z for z in snum if len(z) > 1 and z[-1] == z[-2]]
if len(a1) == 2 and len(a2) == 1:
q += 1
s += int(a2[0])
print(q, s)
Ответ: \(13 \,\, 110680\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене