令和4年度 秋期 応用情報技術者試験 午前 問19

LANに接続された3台のプリンターA〜Cがある。印刷時間が分単位で4, 6, 3, 2, 5, 3, 4, 3, 1の9個の印刷データがこの順で存在する場合,プリンターCが印刷に要する時間は何分か。ここで,プリンターは,複数台空いていれば,A, B, Cの順で割り当て,1台も空いていなければ,どれかが空くまで待ちになる。また,初期状態では3台とも空いている。

解答・解説

正解: ウ. 11

プリンターA、B、Cに印刷データを順に割り当てるシミュレーションを行い、プリンターCに割り当てられたデータの印刷時間の合計を求めます。

印刷データの待ち行列は「4, 6, 3, 2, 5, 3, 4, 3, 1」です。
割り当てのルールは以下の通りです。

  1. プリンターが複数空いている場合は、A → B → C の順で割り当てる。
  2. すべて使用中の場合は、最初に空いたプリンターに割り当てる。
  3. 同時に空いた場合は、再び A → B → C の順で優先される。

順番に処理を追っていくと以下のようになります。

  • 1番目のデータ(4分): 初期状態はすべて空き。優先順位1位のプリンターAに割り当て。(A:0〜4分)
  • 2番目のデータ(6分): B、Cが空き。優先順位が高いプリンターBに割り当て。(B:0〜6分)
  • 3番目のデータ(3分): Cが空き。プリンターCに割り当て。(C:0〜3分)
  • 4番目のデータ(2分): すべて使用中。最初に空くのは3分後のC。プリンターCに割り当て。(C:3〜5分)
  • 5番目のデータ(5分): A(4分後)、C(5分後)、B(6分後)の順に空く。最初に空くプリンターAに割り当て。(A:4〜9分)
  • 6番目のデータ(3分): C(5分後)、B(6分後)、A(9分後)の順に空く。最初に空くプリンターCに割り当て。(C:5〜8分)
  • 7番目のデータ(4分): B(6分後)、C(8分後)、A(9分後)の順に空く。最初に空くプリンターBに割り当て。(B:6〜10分)
  • 8番目のデータ(3分): C(8分後)、A(9分後)、B(10分後)の順に空く。最初に空くプリンターCに割り当て。(C:8〜11分)
  • 9番目のデータ(1分): A(9分後)、B(10分後)、C(11分後)の順に空く。最初に空くプリンターAに割り当て。(A:9〜10分)

この結果、プリンターCに割り当てられた印刷データは「3分」「2分」「3分」「3分」の4つです。
したがって、プリンターCが印刷に要する時間は 3+2+3+3=113 + 2 + 3 + 3 = 11 分となります。

各選択肢の解説

  • ア(7): 誤り。プリンターC以外の稼働時間や、途中でシミュレーションを誤った場合の値です。
  • イ(9): 誤り。プリンターAが印刷に要する時間(4+5+1=104+5+1=10)に近いですが不正確な値です。
  • ウ(11): 正解。上記シミュレーションの通り、プリンターCの印刷時間の合計は11分になります。
  • エ(12): 誤り。プリンターBが印刷に要する時間(6+4=106+4=10)の計算ミスや、全体の終了時刻などを誤認した値です。

Spineチーム