В компьютерной системе необходимо выполнить некоторое количество вычислительных процессов, которые могут выполняться параллельно или последовательно. Для запуска некоторых процессов необходимы данные, которые получаются как результаты выполнения одного или двух других процессов — поставщиков данных. Независимые процессы (не имеющие поставщиков данных) можно запускать в любой момент времени. Если
В таблице представлены идентификатор (ID) каждого процесса, его длительность и ID поставщиков данных для зависимых процессов.
Определите, какое наибольшее количество процессов может быть завершено за первые 120 мс с момента запуска первого процесса.
Надо разделить данные в столбце «ID поставщиков данных» для тех процессов, где есть зависимость от двух процессов. Для этого выделим
Также добавил строку с нулевым процессом. В результате получим следующую таблицу:
| A | B | C | D |
|---|---|---|---|
| ID процесса | Время выполнения процесса (мс) | ID поставщиков данных | |
| 0 | |||
| 10026 | 18 | 0 | |
| 10123 | 4 | 0 | |
| 10208 | 41 | 10026 | 10123 |
| 10218 | 92 | 0 | |
| 10251 | 10 | 0 | |
| 10285 | 70 | 10026 | 10218 |
| 10374 | 41 | 0 | |
| 10423 | 44 | 0 | |
| 10495 | 2 | 10218 | |
| 10594 | 13 | 0 | |
| 10629 | 59 | 0 | |
| 10707 | 55 | 10629 |
Теперь в столбец E выведем время первого зависимого процесса, а
В ячейку E3 впишем формулу:
=ВПР(C3;A:G;7;0).
В ячейку F3 впишем формулу:
=ВПР(D3;A:G;7;0).
Данные формулы вернут в ячейки время зависимых процессов.
В ячейку G3 впишем формулу:
=B3+МАКС(E3:F3).
Данная формула вернет итоговое время процесса.
Получим таблицу:
| A | B | C | D | E | F | G |
|---|---|---|---|---|---|---|
| ID процесса | Время выполнения процесса (мс) | ID поставщиков данных | ||||
| 0 | 0 | |||||
| 10026 | 18 | 0 | 0 | 0 | 18 | |
| 10123 | 4 | 0 | 0 | 0 | 4 | |
| 10208 | 41 | 10026 | 10123 | 18 | 4 | 59 |
| 10218 | 92 | 0 | 0 | 0 | 92 | |
| 10251 | 10 | 0 | 0 | 0 | 10 | |
| 10285 | 70 | 10026 | 10218 | 18 | 92 | 162 |
| 10374 | 41 | 0 | 0 | 0 | 41 | |
| 10423 | 44 | 0 | 0 | 0 | 44 | |
| 10495 | 2 | 10218 | 92 | 0 | 94 | |
| 10594 | 13 | 0 | 0 | 0 | 13 | |
| 10629 | 59 | 0 | 0 | 0 | 59 |
Окончательно введя формулу
=СЧЁТЕСЛИ(G3:G100;"<=120"),
получим ответ — 54.
Ответ: 54.

