nice-coding
@nice-coding
веб-программист

Как учесть совокупность сумм всех элементов списка?

Имеется совокупность переменных a-e. При условии, что сумма любых двух элементов из списка меньше заданной величины, выполняется операция. Как прописать проверку этих сумм, не прибегая к занудному перечислению типа:
if a + b < x or \
    a + c < x or \:
    print('...')
  • Вопрос задан
  • 83 просмотра
Решения вопроса 1
longclaps
@longclaps
С ума вы там посходили, штоле? Всей проверки-то - выбрать две наибольших переменных, сложить и сравнить.
Что деется?..
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
from itertools import combinations

values_list = [1, 2, 3]
x = 4

if any(map(lambda v: v < x, map(sum, combinations(values_list, 2)))):
    print('...')
Ответ написан
Комментировать
nice-coding
@nice-coding Автор вопроса
веб-программист
a = 1
b = 5
c = 9
x = 15
mxmGR = 0
mxmJR = 0
lst = [a, b, c]
mxm = max(lst)
mxmQnt = lst.count(mxm)

for i in lst:
    if mxmQnt >= 2:
        mxmGR, mxmJR = mxm, mxm
    else:
        mxmGR = mxm
        if mxmJR < i < mxmGR:
            mxmJR = i

if mxmGR + mxmJR < x:
    print('...')
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы