В файле содержится информация о совокупности N вычислительных процессов, которые могут выполняться параллельно или последовательно. Будем говорить, что процесс B зависит от процесса A, если для выполнения процесса B необходимы результаты выполнения процесса A. В этом случае процессы могут выполняться только последовательно. Информация о процессах представлена в файле в виде таблицы. В первом столбце таблицы указан идентификатор процесса (ID), во втором столбце таблицы — время его выполнения в миллисекундах, в третьем столбце перечислены с
Типовой пример организации данных в файле:
| ID процесса B | Время выполнения процесса B (мс) | ID процесса(-ов) A |
|---|---|---|
| 1 | 2 | 0 |
| 2 | 4 | 0 |
| 3 | 4 | 1; 2 |
| 4 | 7 | 1; 2 |
Определите сумму номеров всех процессов, которые запустятся, но не успеют завершиться за первые T = 30 мс с момента запуска первого процесса (при условии, что все независимые друг от друга процессы могут выполняться параллельно и никакие задержки не допускаются).
Например, для приведённой таблицы, при T = 6 мс, процессы с ID 3 и 4 будут запущены через 4 мс с момента запуска первого процесса и на момент времени T завершены ещё не будут. Ответ 7.
В столбце D будем указывать время начала процесса, в столбце E время окончания. Посчитаем время окончания, для этого сложим время начала и длительность процесса. В ячейку E2 введем формулу =D2+B2 и скопируем её до конца списка. Время начала для независимых процессов равно 0, для процессов зависимых от одного процесса равно времени окончания зависимого процесса, для процессов зависимых от нескольких процессов- максимальному времени окончания зависимых процессов. Так для процесса 7 время начала равно времени окончания 1 процесса, а для процесса 8 максимальному времени окончания процессов 1 и 4. Для процесса 8 введем формулу =МАКС(E2;E5).
Заполнив весь столбец получим таблицу:
Процессы которые запустятся, но не успеют завершиться за первые T = 30 мс с момента запуска первого процесса это процессы 19, 22, 23, 24 и 26. Сумма номеров этих процессов равна 114.
Ответ: 114.

