root двоичного дерева и число need. Назовём вершину сильной, если в её поддереве (сама вершина и все её потомки) найдётся не меньше need вершин со значением строго меньше, чем у неё.
Верните количество сильных вершин в дереве.root=tree_node([8, 3, 9, 1, 5]), need=2 → 1
Под корнем 8 лежат 3, 9, 1, 5 — меньше восьми три из них, подходит. У вершины 3 в поддереве 1 и 5, меньше только 1 — мало. У 9 поддерево из одной вершины. Ответ 1.
root=tree_node([6, 4, 2, 1, 3, 1]), need=1 → 3
Подходят 6 (под ней всё меньше), 4 (под ней 1 и 3) и 2 (под ней 1). Листья не подходят: в их поддереве нет других вершин. Ответ 3.
root=tree_node([2, 2, 2]), need=1 → 0
Все значения равны, а нужно строго меньше — ответ 0.
Node.val ≤ 10⁴root=tree_node([8, 3, 9, 1, 5]), need=2
1
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 87 тестов на сервере, включая скрытые.