Алгоритм решения задания 15. Часть 3
Учимся решать 15 задания третьего типа
Читать
В файле содержится последовательность целых чисел. Её элементы могут принимать целые значения от -100 000 до 100 000 включительно.
Определите количество троек последовательности, в которых ровно один элемент является четырёхзначным числом и оканчивается на 6, а сумма элементов тройки не больше минимального положительного элемента последовательности, являющегося четырёхзначным числом, которое оканчивается на 6.
B ответе запишите количество найденных троек, затем максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности.
with open('1708.txt') as f:
data = list(map(int, f))
def f(num):
return len(str(abs(num))) == 4 and str(num)[-1:] == '6'
min_pos_6 = min(i for i in data if f(i) and i > 0)
ans = []
for num1, num2, num3 in zip(data, data[1:], data[2:]):
elements = (num1, num2, num3)
sum_el = sum([f(elem) for elem in elements])
if sum_el == 1 and sum(elements) <= min_pos_6:
ans.append(sum(elements))
print(len(ans), max(ans))
