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

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

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

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

Решение:

Python


def el_lt_310(t: tuple[int]) -> bool:
    return all(x < 310 for x in t)

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

final_tuple = tuple(filter(el_lt_310, zip(num_array, num_array[1:])))
min_sum = min(map(lambda f: f[0]**3 + f[1]**3, final_tuple))

print(len(final_tuple), min_sum)

Ответ: \(1457 \,\, -1891619136576\)