@iliareznik
Начинающий

Какое наибольшее четное число?

Необходимо из 3 вводимых натуральных чисел составить наибольшее четное натуральное число.
Программа тестирования говорит, что пройдено только 10 тестов из 50. Что не так?

a, b, c = map(int, input().split())

n1 = max(a, b, c)
n2 = a + b + c - n1
n3 = 0

if a == n1:
    if c % 2 != 0:
        n2 = n2 - c
        n3 = c
    if b % 2 != 0:
        n2 = n2 - b
        n3 = b

if b == n1:
    if a % 2 != 0:
        n2 = n2 - a
        n3 = a
    if c % 2 != 0:
        n2 = n2 - c
        n3 = c

if c == n1:
    if a % 2 != 0:
        n2 = n2 - a
        n3 = a
    if b % 2 != 0:
        n2 = n2 - b
        n3 = b

print(n1 * 100 + n2 + n3 * 10)
  • Вопрос задан
  • 921 просмотр
Решения вопроса 1
Если я правильно понял цель задания то можно сделать так:
s = [23,45,67]
from itertools import chain, combinations
def all_subsets(ss):
    return chain(*map(lambda x: combinations(ss, x), range(1, len(ss)+1)))
variants = max([vv for vv in (sum(v) for v in all_subsets(s)) if vv % 2 == 0])

Если нет, то приложить задания полностью
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы