В файле содержится последовательность целых чисел. Элементы последовательности – четырёхзначные натуральные числа. Найдите все тройки элементов последовательности, для которых восьмеричная запись произведения разрядов всех чисел из тройки представляет собой палиндром, а среднее арифметическое всех чисел тройки больше, чем среднее арифметическое всех чисел в файле, кратных . В ответе запишите количество найденных троек, затем, через пробел, максимальную из сумм элементов таких троек. В данной задаче под тройкой подразумевается три идущих подряд элемента последовательности
# Функция для перевода числа в 8-ю СС
def vosem(n):
x=n
s=’’
while x>0:
s=str(x%8)+s
x=x//8
return s
# Функция для нахождения произведения всех цифр числа
def p(n):
pr = 1
x = n
while x>0:
pr *= x % 10
x = x // 10
return pr
f = open(’17.txt’)
a = [int(s) for s in f.readlines()]
b=[x for x in a if x%88==0]
sr=sum(b)/len(b)
n=len(a)
counter = 0
maxim = -100000000000000000
for i in range(n - 2):
x, y, z = a[i], a[i + 1], a[i+2]
t=p(x)*p(y)*p(z)
s=vosem(t)
if s==s[::-1]:
if (x+y+z)/3>sr:
counter+=1
maxim=max(maxim, x+y+z)
print(counter, maxim)
Ответ: 28760 29563