Войти Регистрация
Алгоритмы

178. Корень дерева категорий по его коду

Лёгкая

Дерево с вершинами 1..n записано в список code: подряд, в любом порядке, идут коды всех вершин. Код вершины u — это u, затем число её детей d, затем d номеров детей.

Гарантируется, что code — корректная запись корневого дерева. Верните номер корня.

В работе: Выгрузка дерева категорий каталога: строки пришли вперемешку, и нужно понять, какая категория верхняя.

Пример 1

Ввод
code = [3, 0, 1, 0, 5, 2, 2, 6, 4, 3, 5, 1, 3, 2, 0, 6, 0]
Вывод
4

Вершина 4 — единственная, которой нет среди детей.

Пример 2

Ввод
code = [1, 0]
Вывод
1

Дерево из одной вершины.

Ограничения

  • 2 ≤ длина code ≤ 3·10⁵
  • Вершины пронумерованы 1..n
  • Лимит — 2 с на тест (1500 мс).
Как вызывается ваш код Читать ввод и печатать ответ не нужно: мы вызываем функцию на каждом тесте и сравниваем то, что она вернула. print() и console.log() уходят в консоль.
def tree_root(code):
ДеревьяРазбор последовательностиМатематикацельO(n)

Источник: Ozon, отборочный контест Route 256, 2024 (репозиторий участника). Условие пересказано своими словами.