В файле содержится информация о совокупности N вычислительных процессов, которые могут выполняться параллельно или последовательно.
Приостановка выполнения процесса не допускается. Будем говорить, что процесс B зависит от процесса A, если для выполнения процесса B необходимы результаты выполнения процесса A. В этом случае процессы A и B могут выполняться только последовательно.
Информация о процессах представлена в файле в виде таблицы. В первом столбце таблицы указан идентификатор процесса (ID), во втором столбце таблицы — время его выполнения в миллисекундах, в третьем столбце перечислены с разделителем «;» ID процессов, от которых зависит данный процесс. Если процесс независимый, то в таблице указано значение 0.
Определите максимальное количество процессов, которые могут быть завершены за первые 17 мс. Считать, что каждый процесс начинается в самое раннее допустимое время. Нумерация миллисекунд начинается с 1.
Выполним сортировку данных по
Надо разделить данные в столбце «ID поставщиков данных» для тех процессов, где есть зависимость от двух процессов. Для этого выделим
В OpenOffice аналогично:
В столбце G будем считать общее время выполнения процесса. Для всех ячеек, у которых ячейка
В ячейку E5 запишем формулу =ВПР(C5;A:G;7;0) и скопируем ее на диапазон E5:E15. Данная формула выведет время процесса, от которого зависит текущий.
В ячейку F16 запишем формулу =ВПР(D16;A:G;7;0) и скопируем ее на диапазон F16:F26. Данная формула выведет время второго процесса, от которого зависит текущий.
В столбце H будем выписывать время начала процесса, для этого
Получаем таблицу:
Окончательно, воспользовавшись формулой =СЧЁТЕСЛИ(G:G;"<18"), получим ответ — 12.
Ответ: 12.

