Ctrl K

Цифры вдоль полной ветки

Средняя
Дано двоичное дерево root, в каждой вершине которого записана цифра, и список цифр digits. Верните True, если в дереве есть путь от корня до **листа**, цифры вершин которого ровно по порядку совпадают с digits, и False иначе. Путь, совпадающий с digits, но обрывающийся не в листе, не подходит.
Пример 1
root=tree_node([3, 1, 4, None, 5, 1, 9]), digits=[3, 1, 5] → True

Путь 3 → 1 → 5 идёт от корня и заканчивается листом.

Пример 2
root=tree_node([3, 1, 4, None, 5, 1, 9]), digits=[3, 4] → False

Путь 3 → 4 есть, но вершина 4 не лист — у неё есть дети.

Пример 3
root=tree_node([7]), digits=[7] → True
Ограничения
  • В дереве от 1 до 10⁴ вершин
  • 0 ≤ Node.val ≤ 9
  • 1 ≤ len(digits) ≤ 5000
  • 0 ≤ digits[i] ≤ 9
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиДерево глазами наблюдателя справа СредняяДерево по столбцам СредняяПервый на нижнем этаже СредняяМаксимум на каждом уровне дерева СредняяВставить уровень в дерево Средняя
загружаем Python…
Вход
root=tree_node([3, 1, 4, None, 5, 1, 9]), digits=[3, 1, 5]
Ожидается
True

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 61 тест на сервере, включая скрытые.