base и top. Положите top поверх base так, чтобы корни совпали, и дальше совмещайте вершины по одинаковым позициям: левый ребёнок к левому, правый к правому.
Постройте новое дерево по правилу:
- если на позиции есть вершины в обоих деревьях, в результате там вершина со значением, равным их сумме;
- если вершина есть только в одном дереве, она переходит в результат вместе со своим поддеревом.
Верните корень получившегося дерева (или пустое дерево, если оба исходных пустые).base=tree_node([4, 1, 6, None, 2]), top=tree_node([3, -1, None, 5]) → [7, 0, 6, 5, 2]
Корни совпадают: 4 + 3 = 7. Левые дети: 1 + (-1) = 0. У этой вершины левый ребёнок есть только в top (5), правый — только в base (2). Правый ребёнок корня есть только в base (6).
base=tree_node([]), top=tree_node([8, None, 9]) → [8, None, 9]
Первое дерево пустое, результат совпадает со вторым.
base=tree_node([2, 2, 2]), top=tree_node([5]) → [7, 2, 2]
Node.val ≤ 10⁴base=tree_node([4, 1, 6, None, 2]), top=tree_node([3, -1, None, 5])
[7, 0, 6, 5, 2]
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 61 тест на сервере, включая скрытые.