n процессов, и они образуют дерево: у каждого процесса, кроме одного корневого, есть родитель — процесс, который его запустил. ids[i] — номер i-го процесса, parents[i] — номер его родителя; у корневого процесса parents[i] = 0.
Когда процесс останавливают, вместе с ним останавливаются все его дети, их дети и так далее.
Верните номера всех процессов, которые остановятся, если остановить процесс target. Порядок не важен.ids=[4, 8, 2, 6, 9], parents=[0, 4, 4, 8, 8], target=8 → [8, 6, 9]
Процесс 8 запустил 6 и 9, поэтому остановятся 8, 6 и 9. Процессы 4 и 2 продолжат работу.
ids=[3, 1, 5], parents=[5, 3, 0], target=5 → [5, 3, 1]
5 — корень всего дерева, поэтому останавливается всё.
ids=[7], parents=[0], target=7 → [7]
ids) = len(parents) ≤ 5·10⁴ids[i] ≤ 5·10⁴, все номера различныparents[i] ≤ 5·10⁴parents[i] = 0, связи образуют деревоtarget есть среди idsids=[4, 8, 2, 6, 9], parents=[0, 4, 4, 8, 8], target=8
[8, 6, 9]
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 64 теста на сервере, включая скрытые.