root двоичного дерева поиска: для каждой вершины все значения в её левом поддереве меньше её значения, а в правом — больше. Все значения в дереве различны.
Проверьте, есть ли в дереве две разные вершины, значения которых в сумме дают goal. Верните True, если такие найдутся, иначе False.root=tree_node([10, 4, 15, 1, 7, None, 20]), goal=22 → True
7 + 15 = 22, оба числа есть в дереве.
root=tree_node([10, 4, 15, 1, 7, None, 20]), goal=20 → False
20 = 10 + 10, но вершина со значением 10 одна, а брать одну вершину дважды нельзя. Других подходящих пар нет.
root=tree_node([3]), goal=6 → False
Node.val ≤ 10⁴root — корректное двоичное дерево поискаroot=tree_node([10, 4, 15, 1, 7, None, 20]), goal=22
True
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 72 теста на сервере, включая скрытые.