course_count курсов с номерами от 1 до course_count. Курс с номером i длится durations[i - 1] месяцев.
Некоторые курсы можно начать только после других: пара [a, b] в списке prereqs означает, что курс a нужно закончить до начала курса b.
Курс можно начать в любой момент, когда пройдены все курсы, от которых он зависит. Одновременно можно проходить сколько угодно курсов.
Верните наименьшее число месяцев, за которое можно пройти всю программу. Циклических зависимостей нет.course_count=4, prereqs=[[1, 2], [1, 3], [3, 4]], durations=[2, 6, 1, 3] → 8
Курс 1 закончится через 2 месяца. Курс 2 идёт после него и закончится к 2 + 6 = 8. Курсы 3 и 4 закончатся к 2 + 1 + 3 = 6. Всё готово через 8 месяцев.
course_count=3, prereqs=[], durations=[4, 9, 2] → 9
Зависимостей нет, все курсы идут одновременно — ждём самый долгий, 9 месяцев.
course_count=3, prereqs=[[2, 1], [3, 1]], durations=[5, 1, 4] → 9
prereqs различны, зависимости не образуют циклаcourse_count=4, prereqs=[[1, 2], [1, 3], [3, 4]], durations=[2, 6, 1, 3]
8
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 63 теста на сервере, включая скрытые.