Задача #3968

Процессы

(Д. Бахтиев) В файле содержится информация о совокупности N вычислительных процессов, которые могут выполняться параллельно или последовательно. Приостановка выполнения процесса не допускается. Будем говорить, что процесс B зависит от процесса A, если для выполнения процесса B необходимы результаты выполнения процесса A. В этом случае процессы A и B могут выполняться только последовательно.
Информация о процессах представлена в файле в виде таблицы. В первом столбце таблицы указан идентификатор процесса (ID), во втором столбце таблицы – время его выполнения в миллисекундах, в третьем столбце перечислены с разделителем «;» ID процессов, от которых зависит данный процесс. Если процесс независимый, то в таблице указано значение 0.
Определите номер процесса, который мог выполняться дольше всего за первые 20 мс (при этом не обязательно целиком) с момента запуска первого процесса, при условии, что все независимые друг от друга процессы могут выполняться параллельно. Если таких процессов несколько, выберите процесс с наименьшим ID. В ответе запишите целое число — ID искомого процесса.
Типовой пример организации данных в файле

ID процесса B Время выполнения процесса B (мс) ID процесса(-ов) A
1 3 0
2 4 1
3 2 2; 4
4 5 0
5 8 1; 4
6 3 1

для приведённой таблицы за первые 6 мс дольше всех мог выполняться процесс с ID 4.

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

Файлы к задаче

Ответ
Войдите, чтобы история ответов и статистика сохранялись.
Решение Нажми, чтобы открыть

Ответ

3
Быстрый переход
Перейти к задаче