Задание 17. Информатика. 2023-11

Просмотры: 57
Изменено: 22 ноября 2024

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

Файл с данными

Решение:

Python


def ended_by_same_odd_number(t: tuple[int]) -> bool:
    n1, n2 = tuple(map(lambda x: abs(x) % 10, t))
    return n1 == n2 and n1 % 2

file_desc = open('17var11.txt')
num_array = [int(x) for x in file_desc.readlines()]

final_tuple = tuple(filter(ended_by_same_odd_number, zip(num_array, num_array[1:])))
max_prod = max(map(lambda f: abs(f[0]*f[1]), final_tuple))

print(len(final_tuple), max_prod)

Ответ: \(227 \,\, 96784219\)