РУҚА
13

Решение: Минимальное время процессов

ЕГЭ · Информатика · Задание 13 · Параллельные вычисления
ВысокаяФИПИE4C7B9Короткий ответ≈ 8 минутРазбор в 4 шагаОтвет сверен с ключом
Условие

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

В первом столбце файла указан идентификатор процесса, во втором — время его выполнения в миллисекундах, в третьем — через разделитель «;» перечислены идентификаторы процессов, от которых зависит данный процесс. Если процесс является независимым, указано значение 0.

Определите минимальное время, через которое завершится выполнение всей совокупности процессов, при условии, что все независимые друг от друга процессы могут выполняться параллельно. Для выполнения задания используйте данные из прилагаемого файла.

Открыть задачу и решить самому
Дальше ответЕсли ещё решаете — начните с подсказок: они ведут к ответу, но не выдают его.
К подсказкам

Решение по шагам

4 шага
1

Представим процессы в виде ориентированного графа: ребро от процесса-зависимости ведёт к процессу, который может начаться только после него.

2

Для каждого процесса вычислим время его завершения. Если процесс независим, его время завершения равно собственному времени выполнения. Для остальных процессов используем формулу: время завершения равно максимальному времени завершения всех зависимостей плюс время выполнения данного процесса.

$$T_i = t_i + \max_{j \in D_i} T_j$$
3

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

Максимальное время завершения процессов по данным прилагаемого файла равно $189$ миллисекундам.

Ответ
189
189
так ответ выглядит в бланке

Где здесь ошибаются

Складывают времена всех процессов, хотя независимые процессы выполняются параллельно.

Берут сумму времени только непосредственных зависимостей, не учитывая цепочку предшествующих процессов.

Используют минимум вместо максимума при выборе времени завершения зависимостей.

Закрепить приёмВ теме «Параллельные вычисления» ещё 39 задач — с ответом и таким же разбором.
Тренироваться

Как решать задание 13 ЕГЭ, информатика

Разбор этой задачи разложен на 4 шага: видно, откуда берётся каждое число и где теряется балл. Ответ приведён рядом с выкладками, а не вместо них.

Задача из темы «Параллельные вычисления»: в ней 40 задач, и у каждой есть такой же разбор. Регистрация не нужна.