Минимальное время процессов
В файле содержится информация о совокупности $N$ вычислительных процессов, которые могут выполняться параллельно или последовательно. Процесс $B$ зависит от процесса $A$, если для выполнения процесса $B$ необходимы результаты выполнения процесса $A$. В этом случае процессы могут выполняться только последовательно.
В первом столбце файла указан идентификатор процесса ($ID$), во втором — время его выполнения в миллисекундах, в третьем перечислены через разделитель «;» $ID$ процессов, от которых зависит данный процесс. Если процесс является независимым, указано значение 0.
Определите минимальное время, через которое завершится выполнение всей совокупности процессов, если все независимые друг от друга процессы могут выполняться параллельно. Используйте данные из прилагаемого файла.
Пример организации данных: процесс 1 выполняется 4 мс и независим; процесс 2 выполняется 3 мс и независим; процесс 3 выполняется 1 мс после процессов 1 и 2; процесс 4 выполняется 7 мс после процесса 3.
Условие как в банке ФИПИ — открыть и сверить
| ||||||||||||||||||
| |
Формат: өлшем бірліктері жоқ сан немесе сөз; бөлшек бөлігін үтірмен бөліңіз.
1Мягкая — с чего смотретьдеңгей 1 из 3
Для каждого процесса определите момент его завершения с учётом всех процессов-предшественников.
2Жетекші — қандай сандарды есептеудеңгей 2 из 3
Если процесс зависит от нескольких процессов, он может начаться только после завершения самого позднего из них: $T_B = t_B + \max(T_{A_1}, T_{A_2}, \ldots)$.
3Тікелей — іс жүзінде шешімдеңгей 3 из 3
Обработайте процессы в порядке зависимостей, вычислите время завершения каждого процесса и возьмите максимум среди всех полученных значений. Итоговое время равно $215$ мс.
