Параллельное выполнение процессов
В файле содержится информация о совокупности $N$ вычислительных процессов, которые могут выполняться параллельно или последовательно. Приостановка выполнения процесса не допускается. Будем говорить, что процесс $B$ зависит от процесса $A$, если для выполнения процесса $B$ необходимы результаты выполнения процесса $A$. В этом случае процессы $A$ и $B$ могут выполняться только последовательно.
Информация о процессах представлена в файле в виде таблицы. В первом столбце таблицы указан идентификатор процесса (ID), во втором столбце таблицы — время его выполнения в миллисекундах, в третьем столбце перечислены с разделителем «;» ID процессов, от которых зависит данный процесс. Если процесс независимый, то в таблице указано значение 0.
Определите максимальную продолжительность отрезка времени (в мс), в течение которого возможно одновременное выполнение максимального количества процессов при условии, что все независимые друг от друга процессы могут выполняться параллельно.
Типовой пример имеет иллюстративный характер. Для выполнения задания используйте данные из прилагаемого файла.
Условие как в банке ФИПИ — открыть и сверить
| ||||||||||||||||||
| |
Формат: өлшем бірліктері жоқ сан немесе сөз; бөлшек бөлігін үтірмен бөліңіз.
1Мягкая — с чего смотретьдеңгей 1 из 3
Представьте процессы в виде ориентированного графа зависимостей и определите моменты начала и окончания каждого процесса.
2Жетекші — қандай сандарды есептеудеңгей 2 из 3
Процесс может начаться только после завершения всех процессов, указанных в третьем столбце. Максимальное число одновременно выполняющихся процессов ищите по временным отрезкам.
3Тікелей — іс жүзінде шешімдеңгей 3 из 3
Для данных из файла отрезок, на котором выполняется максимальное количество процессов, имеет продолжительность $14$ мс.
