Задача к ЕГЭ по информатике на тему «обработка числовой последовательности» №7

В файле содержится последовательность целых чисел. Элементы последовательности могут принимать целые значения от 0 до 10 000. Определите количество пар элементов последовательности, в которых хотя бы у одного из чисел сумма цифр троичной записи равна сумме цифр троичной записи максимального элемента последовательности, кратного 11. В ответе запишите количество найденных пар, затем минимальную из сумм элементов таких пар, числа записывайте без пробелов и разделителей. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.

def summ_three(number):
    summ = 0
    x = number
    while x > 0:
        summ += x % 3
        x //= 3
    return summ

file = open(’17.txt’)
arr = [int(_) for _ in file]
counter_pairs = 0
min_summ = 10 ** 10

max_elem_11 = -10 ** 10
for elem in arr:
    if elem % 11 == 0:
        max_elem_11 = max(max_elem_11, elem)

summ_three_max_elem_11 = summ_three(max_elem_11)

for index in range(len(arr) - 1):
    if summ_three(arr[index]) == summ_three_max_elem_11 
        or summ_three(arr[index + 1]) == summ_three_max_elem_11:
        counter_pairs += 1
        min_summ = min(min_summ, arr[index] + arr[index + 1])
print(counter_pairs, min_summ, sep="")

Ответ: 28862085
Оцените статью
Я решу все!