В файле содержится информация о совокупности N вычислительных процессов, которые могут выполняться параллельно или последовательно. Приостановка выполнения процесса не допускается. Будем говорить, что процесс B зависит от процесса A, если для выполнения процесса B необходимы результаты выполнения процесса A. В этом случае процессы A и B могут выполняться только последовательно. Информация о процессах представлена в файле в виде таблицы. В первом столбце таблицы указан идентификатор процесса (ID), во втором столбце таблицы – время его выполнения в миллисекундах, в третьем столбце перечислены с разделителем «;» ID процессов, от которых зависит данный процесс. Если процесс независимый, то в таблице указано значение 0. Определите максимальное количество процессов, которые могут быть завершены за первые 17 мс. Считать, что каждый процесс начинается в самое раннее допустимое время. Нумерация миллисекунд начинается с 1.
Решение:
Нарисуем последовательность кодов зелеными линиями, соблюдая зависимость
последовательностей.
Процессы нельзя двигать, так как время окончания КАЖДОГО процесса минимально.
Заполняем таблицу с помощью функции =(ячейка из столбца В) + МАКС(ячейка из D;ячейка из D), где первое значение это время самого процесса, а второе значение это время зависимых процессов(если они есть)
В конце таблица должна выглядеть так:
В ответ вводим количество ячеек, в которых значение не больше 17(Включая 17), они отмечены синим