Олимпиадный тренинг

Задача . ТР02-Д. Задание 22. Процессы в заданный момент


Задание выполняется с использованием прилагаемых файлов.

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

Процесс B зависит от процесса A, если для выполнения B необходим результат A. В таком случае B может начаться только после завершения A. Если предшественников несколько, должны завершиться все они. Ограничений на число одновременно выполняющихся процессов нет.

В первом столбце таблицы указан ID процесса, во втором — длительность в миллисекундах, в третьем — ID предшественников, разделённые символом «;». Значение 0 означает отсутствие предшественников.

Каждый процесс начинается в самое раннее допустимое время. Нумерация миллисекунд начинается с 1: независимый процесс длительностью d выполняется на миллисекундах 1, 2, …, d, а зависимый может начаться со следующей миллисекунды после завершения всех предшественников.

Определите количество процессов, которые выполняются на 12-й миллисекунде. В ответе запишите целое число.

Типовой пример организации данных
ID процесса B Время выполнения процесса B (мс) ID процесса (ов) A
1 3 0
2 4 1
3 2 2; 4
4 5 0

В примере процесс 2 выполняется на миллисекундах 4–7, а процесс 3 — на миллисекундах 8–9. Пример имеет иллюстративный характер; для решения используйте прилагаемый файл.


Статистика успешных решений по компиляторам
Комментарий учителя