Ну проверь, есть ли среди цифр чётная, всего делов...
Пока не прибежали боты с перебором всех комбинаций цифр.
Вот код:
x, y, z = sorted(map(int, input().split()), reverse=True)
if z % 2:
if y % 2 == 0: y, z = z, y
elif x % 2 == 0: x, y, z = y, z, x
print(*(1,) if z % 2 else (x, y, z), sep='')
Сортировка цифр по убыванию даёт нам наибольшее возможное число из них.
А дальше минимальную чётную цифру вынимаем и двигаем в конец, если там стояла нечётная.
Если все нечётные, то выводим 1.
Отдельные проверки на ноль не нужны, т.к. если ноль есть, то сортировка отправит его в конец.
А вот насчёт трёх нулей твоя задача ничего не говорит. Что выводить, 0 или 1? Из трёх нулей можно составить чётное число, но оно не трёхзначное.