как определить эти три числа?
Дан список из 7 целых чисел, которые находятся в одной строке и разделены. Известно, что это три целых числа и все возможные суммы из данных трех чисел. Создайте приложение, которое по данному списку определит данные три числа.
Пример:
2 2 11 4 9 7 9
Результат:
2 2 7
Ответы (1 шт):
Автор решения: Edward Grachev
→ Ссылка
"""
Дан список из 7 целых чисел,
которые находятся в одной строке и разделены.
Известно, что это три целых числа и все возможные суммы из данных трех чисел.
Создайте приложение, которое по данному списку определит данные три числа.
"""
str_number = '2 2 11 4 9 7 9'
# Разделяем превращаем строку чисел в сортировоной сисок int
number_list = sorted([int(x) for x in str_number.split()])
# Максимальный элемент массива для сравнения результата
max_value = number_list[-1]
min_value = number_list[0]
# Добавляем минимальный элемент массива
result = [min_value]
# Начинаем перебор массива с 1 элемента
for i in range(1, len(number_list)):
# Начинаем перебор массива со 2 элемента
for j in range(2, len(number_list)):
# Если минимальное число + i + j = максимальному добавляем i и j в список
if (min_value + number_list[i] + number_list[j]) == max_value:
result.append(number_list[i])
result.append(number_list[j])
print(result)