n задач с номерами от 0 до n - 1 и m команд с номерами от 0 до m - 1. Задача i закреплена за командой team[i], а если team[i] = -1, то ни за какой. У команды может не быть ни одной задачи.
after[i] — список задач, которые должны стоять в плане раньше задачи i (не обязательно непосредственно перед ней).
Составьте план — порядок всех n задач, в котором:
- для каждой задачи все задачи из after[i] идут раньше неё;
- задачи одной команды стоят подряд, без вкраплений чужих задач.
Верните план. Если такого плана нет, верните пустой список.
Гарантируется, что если план существует, то он единственный.n=4, m=1, team=[0, -1, 0, -1], after=[[3], [2], [0], []] → [3, 0, 2, 1]
Задача 3 открывает путь задаче 0, за ней в той же команде идёт задача 2, и только потом задача 1. Команда 0 (задачи 0 и 2) идёт подряд.
n=3, m=1, team=[0, -1, 0], after=[[], [0], [1]] → []
Задача 1 ждёт задачу 0, а задача 2 ждёт задачу 1. Значит, задача 1 должна оказаться между двумя задачами команды 0 — команда разорвётся, поэтому ответ пустой.
n=3, m=2, team=[1, 1, 0], after=[[2], [0], []] → [2, 0, 1]
after[i] номера различныn=4, m=1, team=[0, -1, 0, -1], after=[[3], [2], [0], []]
[3, 0, 2, 1]
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 30 тестов на сервере, включая скрытые.