Задание 22 ЕГЭ по информатике · 330C00

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

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

Определите максимальное количество процессов, которые параллельно выполняются на 7-й мс. Считать, что каждый процесс начинается в самое раннее допустимое время. Нумерация миллисекунд начинается с 1.

Типовой пример организации данных в файле
ID процесса BВремя выполнения процесса B (мс)ID процесса(-ов) A
130
241
322; 4
450
581; 4
631

Для приведённой таблицы процесс 3 начинается на 8-й мс, заканчивается на 9-й мс.

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

К заданию прилагается файл с данными — скачайте его в задании внутри Precettore.

Показать ответ
8
Подсказки (3)
  1. Для каждого процесса определите самое раннее время начала с учётом времени завершения всех процессов-зависимостей.
  2. Процесс выполняется на миллисекундах от времени начала до времени начала плюс длительность минус 1 включительно.
  3. После построения расписания подсчитайте процессы, интервалы выполнения которых содержат 7-ю миллисекунду. Максимальное количество равно 8.
Решение
1. Для каждого процесса по таблице из файла вычисляем самое раннее время начала. Если процесс не имеет зависимостей, он начинается с 1-й миллисекунды. Для зависимого процесса начало определяется окончанием последнего из процессов-зависимостей.
start(B)=maxA∈dependencies(B)(start(A)+duration(A))

2. Для каждого процесса строим интервал выполнения: если он начинается на миллисекунде s и длится d миллисекунд, то выполняется на миллисекундах s, s+1, \ldots, s+d-1.
finish(B)=start(B)+duration(B)−1

3. Отбираем процессы, для которых выполняется условие start(B)≤ 7≤ finish(B), и подсчитываем их количество.

4. На 7-й миллисекунде одновременно выполняются 8 процессов.
Частые ошибки
  • Считать зависимый процесс доступным сразу после начала процесса-предшественника, а не после его завершения.
  • Учитывать миллисекунду окончания процесса как дополнительную миллисекунду выполнения.
  • Начинать нумерацию миллисекунд с нуля вместо единицы.

Похожие задания

22В этом случае процессы A и B могут выполняться только последовательно. Информация о процессах представлена в…Параллельные процессы: сколько и как долго · 09605522В этом случае процессы A и B могут выполняться только последовательно. Информация о процессах представлена в…Параллельные процессы: сколько и как долго · DC04F122В этом случае процессы A и B могут выполняться только последовательно. Информация о процессах представлена в…Параллельные процессы: сколько и как долго · E923FA22В этом случае процессы A и B могут выполняться только последовательно. Информация о процессах представлена в…Параллельные процессы: сколько и как долго · A3580C22В этом случае процессы A и B могут выполняться только последовательно. Информация о процессах представлена в…Параллельные процессы: сколько и как долго · 777B7822В этом случае процессы A и B могут выполняться только последовательно. Информация о процессах представлена в…Параллельные процессы: сколько и как долго · 10A67122В этом случае процессы A и B могут выполняться только последовательно. Информация о процессах представлена в…Параллельные процессы: сколько и как долго · E3251922В этом случае процессы A и B могут выполняться только последовательно. Информация о процессах представлена в…Параллельные процессы: сколько и как долго · DAB821

Нужен репетитор по информатике?

Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.

Репетиторы по информатике

Подбор репетитора

Напишите, что нужно, — команда Precettore подберёт репетитора и свяжется с вами.

Готовьтесь к ЕГЭ по информатике в Precettore

Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.