Python: Пазл

Python: Деревья
Обновлено: 01 мая, 23:20
9
Студентов
55%
Завершения

Перед прохождением данного испытания рекомендуется пройти испытание "Трансформер".

src/puzzle.py

Реализуйте функцию combine(), которая объединяет отдельные ветки в одно дерево. Каждая из веток в свою очередь является также деревом.

Функция может принимать на вход неограниченное количество веток и соединяет их. Корневым узлом объединённого дерева является корневой узел первой переданной ветки.

Примеры

branch1 = ['A', [         #   A
    ['B', [               #   |
        ['C'],            #   B
        ['D'],            #  / \
    ]],                   # C   D
]]

branch2 = ['B', [         #   B
    ['D', [               #   |
        ['E'],            #   D
        ['F'],            #  / \
    ]],                   # E   F
]]

branch3 = ['I', [         #   I
    ['A', [               #   |
        ['B', [           #   A
            ['C'],        #   |
            ['H'],        #   B
        ]],               #  / \
    ]],                   # C   H
]]

combine(branch1, branch2, branch3)

# ['A', [            #     A
#     ['B', [        #    / \
#         ['C'],     #   B   I
#         ['D', [    #  /|\
#             ['E'], # C D H
#             ['F'], #  / \
#         ]],        # E   F
#         ['H'],
#     ]],
#     ['I'],
# ]]

Подсказки

Для полного доступа к испытанию нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
900
упражнений
2000+
часов теории
3200
тестов