Задача из ДЕМО-2-23
В файле 22-0.xls содержится информация о совокупности вычислительных процессов, которые могут выполняться параллельно или последовательно. Будем говорить, что процесс
зависит от процесса
, если для выполнения процесса
необходимы результаты выполнения процесса
. В этом случае процессы могут выполняться только последовательно.
Информация о процессах представлена в файле в виде таблицы. В первом столбце таблицы указан идентификатор процесса (ID), во втором столбце таблицы – время его выполнения в миллисекундах, в третьем столбце перечислены с разделителем «;» ID процессов, от которых зависит данный процесс. Если процесс является независимым, то в таблице указано значение 0. Определите минимальное время, через которое завершится выполнение всей совокупности процессов, при условии, что все независимые друг от друга процессы могут выполняться параллельно.
Типовой пример организации данных в файле:
ID процесса |
Время выполнения процесса |
ID процесса(ов) А |
1 | 4 | 0 |
2 | 3 | 0 |
3 | 1 | 1;2 |
4 | 7 | 3 |
Выделяем диапазон , переходим в раздел: «Данные»
«Текст по столбцам»
«С разделителем», в качестве разделителей указываем запятую и точку с запятой. В пустые ячейки
ставим нули.
В ячейку запишем 0 в качестве нулевого процесса.
В столбце найдем время выполнения первого процесса
, в столбце
– второго. Для этого в ячейке
запишем
и растянем до столбца и вниз до конца.
В ячейке запишем формулу
и растянем вниз. Выбираем максимальное значение из диапазона , получаем ответ – 17 мс.