Ctrl K

Внуки чётных предков

Средняя
Дан корень root двоичного дерева. Посчитайте сумму значений всех вершин, у которых дедушка (родитель родителя) существует и хранит чётное число. Если таких вершин нет, верните 0.
Пример 1
root=tree_node([4, 3, 5, 1, 9, None, 7]) → 17

Корень 4 чётный, его внуки — 1, 9 и 7: 1 + 9 + 7 = 17. У остальных вершин внуков нет.

Пример 2
root=tree_node([3, 6, None, 2, 8, 5]) → 5

Корень 3 нечётный, поэтому его внуки 2 и 8 не считаются. У вершины 6 (чётной) есть внук 5 — ответ 5.

Пример 3
root=tree_node([10, 20]) → 0

В дереве всего два уровня, внуков нет ни у кого.

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

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