Задание №22. Выполнение последовательных и параллельных процессов | Логилея

Задание №22. Выполнение последовательных и параллельных процессов

№ 5MXKFN (Уровень сложности: Средний)
В  файле  содержится  информация  о  совокупности  N  вычислительных процессов, которые могут выполняться параллельно или последовательно. Приостановка выполнения процесса  не допускается. Будем говорить, что процесс  B  зависит  от  процесса  A,  если  для  выполнения  процесса  B необходимы результаты выполнения процесса A. В этом случае процессы A и B могут выполняться только последовательно. 
Информация о процессах представлена в файле в виде таблицы. В первом столбце таблицы указан идентификатор процесса (ID), во втором столбце таблицы – время его выполнения в миллисекундах, в третьем столбце перечислены с разделителем «;» ID процессов, от которых зависит данный процесс. Если процесс независимый, то в таблице указано значение 0. 

Определите  максимальное  количество  процессов,  которые  могут  быть завершены  за  первые  17 мс.  Считать,  что  каждый  процесс  начинается  в самое раннее допустимое время. Нумерация миллисекунд начинается с 1. 

Типовой пример организации данных в файле приведён в приложении. 
Типовой  пример  организации  данных  во  входном  файле  приводится только в демонстрационном варианте ЕГЭ! 
Файлы к заданию:
№ 1MDY54 (Уровень сложности: Повышенный)

В файле содержится информация о совокупности N вычислительных процессов, которые могут выполняться параллельно или последовательно. Приостановка выполнения процесса не допускается. Будем говорить, что процесс B зависит от процесса A, если для выполнения процесса B необходимы результаты выполнения процесса A. В этом случае процессы A и B могут выполняться только последовательно.

Информация о процессах представлена в файле в виде таблицы. В первом столбце таблицы указан идентификатор процесса (ID), во втором столбце таблицы – время его выполнения в миллисекундах, в третьем столбце перечислены с разделителем «;» ID процессов, от которых зависит данный процесс. Если процесс независимый, то в таблице указано значение 0.

 

Типовой пример организации данных в файле

 

ID процесса B

Время выполнения

процесса B (мс)

ID процесса(ов) A

1

3

0

2

4

1

3

2

2; 4

4

5

0

5

8

1; 4

 

Определите максимальное количество процессов, которые могут быть завершены за первые 17 мс. Считать, что каждый процесс начинается в самое раннее допустимое время. Нумерация миллисекунд начинается с 1.

Например, для приведённой таблицы найдём количество процессов, которые могут быть завершены за первые 7 мс. Это 3 процесса (за это время завершатся процессы 1, 2 и 4).

Файлы к заданию:
№ 6121RP (Уровень сложности: Базовый)
В файле содержится информация о совокупности N вычислительных процессов, которые могут выполняться параллельно или последовательно. Приостановка выполнения процесса не допускается. Будем говорить, что процесс B зависит от процесса A, если для выполнения процесса B необходимы результаты выполнения процесса A. В этом случае процессы могут выполняться только последовательно.
Информация  о  процессах  представлена в  файле  в  виде  таблицы.  В  первом  столбце таблицы  указан  идентификатор процесса (ID), во втором столбце таблицы – время его выполнения в миллисекундах, в третьем столбце перечислены с разделителем «;» ID процессов, от которых зависит данный процесс. Если процесс независимый, то в таблице указано значение 0.

Типовой пример организации данных в файле:
Определите минимальное время, через которое завершится выполнение всей совокупности процессов, при условии, что все независимые друг от друга процессы могут выполняться параллельно.

Типовой пример имеет иллюстративный характер. Для выполнения задания используйте данные из прилагаемого файла.
Файлы к заданию: