В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от \(-100~000\) до \(100~000\) включительно. Определите количество троек элементов последовательности, в которых ровно одно число не является отрицательным, а сумма элементов тройки не больше максимального элемента последовательности, в десятичной записи которого содержится \(38.\) В ответе запишите количество найденных троек, затем максимальную из тех сумм элементов таких троек, десятичная запись которых начинается на \(38.\) В данной задаче под тройкой подразумеваются три идущих подряд элемента последовательности.
Решение:
Python
nums = [int(x) for x in open('8808.txt')]
m38 = max(x for x in nums if '38' in str(abs(x)))
q, max_sum = 0, 0
for tr in zip(nums, nums[1:], nums[2:]):
if sum(t >= 0 for t in tr) == 1 and sum(tr) <= m38:
q += 1
s = sum(tr)
if str(abs(s))[:2] == '38':
max_sum = max(sum(tr), max_sum)
print(q, max_sum)
Ответ: \(3009 \,\, 38806\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене