РУҚА
13

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

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

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

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

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

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

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

4 шага
1

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

2

Для каждого независимого процесса время завершения равно его длительности.

$$T_i=t_i$$
3

Для процесса с предшественниками определяем наиболее позднее время их завершения. Процесс начинается только после этого момента.

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

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

$$T_{\min}=\max_i T_i$$
Ответ

Числовой ответ определяется по данным прилагаемого файла.

Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.

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

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

Брать минимум времени завершения предшественников вместо максимума.

Не учитывать цепочку зависимостей через промежуточные процессы.

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

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

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

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