Дается три числа А,В,С нужно перемешать цифры внутри А В С чтобы сумма А и В дала С, как это сделать?

Например зайдет число 54 12 75, и должен вывести 54+21=75
  • Вопрос задан
  • 490 просмотров
Решения вопроса 1
longclaps
@longclaps
from itertools import permutations, product

def acronyms(x):
    res = {x}
    for digs in permutations(str(x)):
        if digs[0] != '0': # число, если не ноль, не начинается с нуля
            res.add(int(''.join(digs)))
    return res

a, b, c = 54, 12, 75
zz = acronyms(c)
for x, y in product(acronyms(a), acronyms(b)):
    if x + y in zz:
        print("%d + %d = %d" % (x, y, x + y))
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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