РУҚА
22

Решение: Параллельное выполнение процессов

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

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

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

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

Для выполнения задания используйте данные из прилагаемого файла.

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

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

4 шага
1

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

2

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

3

Для каждого процесса отмечается интервал его выполнения. Затем среди всех моментов и границ интервалов определяется отрезок, на котором одновременно выполняется максимальное количество процессов.

По данным прилагаемого файла продолжительность такого отрезка составляет $9$ миллисекунд.

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

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

Запускают процесс до завершения всех процессов, от которых он зависит.

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

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

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

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

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

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