基本情報技術者 2025年 科目A 問14
問題文
図は、あるプロジェクトの作業A〜Iとその作業日数を表している。このプロジェクトの最短所要日数は何日か。

選択肢
ア:27
イ:28
ウ:29
エ:31(正解)
🔒 解説は解答すると表示されます
クリティカルパス計算【午前解説】
正解の理由
この問題は「プロジェクトの所要日数=クリティカルパスの長さ」を求める問題です。各ノードに到達する最短(実際は最遅ではなく最長=先行作業の最大合計)時間を計算し、開始から終了までの最長経路を採ればよいです。図を追うと、最長になる経路は A→B→G→(ダミー)→D→I で、その合計は 日になります。したがって正解は エ です。
解法ステップ
- 各作業の所要日数を確認:A3、B6、C8、D6、E5、F14、G11、H15、I5。ダミーは日数0。
- ノードごとに「そのノードに到達するまでの最長経過日数」を順に計算(前向き計算)。
- 開始ノード = 0
- Aの終点(分岐ノード) =
- 分岐ノードからの各枝:
- B経由で中央ノード =
- E経由で下端ノード =
- F経由(上段) = (上段右ノードへはさらにダミーで接続)
- 中央ノード(B経由で到達)はすでに9。ここから:
- C先のノード =
- Gで上段右ノード =
- HでD先のノード =
- 上段右ノードには Fから17 と Gから20 が入る → 受ける側は最大値 (ダミーでC先へ接続し、C先のノードは既存の17と比較して最大値を採る)
- C先のノードへは C経路で17、上段右ノードからのダミー経路で20 → 最大は
- C先のノードからDを経てD先のノード =
- D先のノードはH経路で24 と D経路で26 が入る → 最大は
- 最後に I を経て終了 =
- 上の計算で最長経路(クリティカルパス)長が 日であることを確認する。
(短くまとめると、ノード到達時間は常に「そのノードへ入る全ての経路のうち最大値」を採るのがポイントです。)
選択肢別の誤答解説
- ア: 27
- これは A→E→(ダミー)→C→D→I の合計 を見てしまった結果。E→中央はダミーで依存関係は表現できるが、中央に到達する他経路(B経由)がある場合は中央ノードの到達時間はその最大値を採るため、27にはならない。
- イ: 28
- 28 は主に A→B→C→D→I の合計 や、A→F→(ダミー)→D→I の を参照した誤り。いずれも中央の他の経路(特に G 経路)がより長いため最大値にはならない。
- ウ: 29
- 29 は A→B→H→I の を見落としやすい候補。Hは長いが、G経由の累計(31)には及ばないため誤り。
- エ: 31
- 正解。A→B→G→(ダミー)→D→I の合計 が最大となる。
よくある誤解
- ダミー矢印を作業時間があるものと勘違いする:ダミーは依存関係を示すのみで日数は 0 です。合計に含めないこと。
- ノード到達時間を「合計(sum)」で処理してしまう:複数の先行作業がある場合は「最大(max)」を取ること(クリティカルパスは最長経路を採る)。
- 分岐の扱いを誤る:枝ごとの経路を全部比較せずに一つの経路だけ追ってしまうミス。必ずすべての主要経路を確認する。
補足コラム
- クリティカルパス法(CPM)の基本手順は「前向き計算(最早開始/終了)→ 後向き計算(最遅開始/終了)→ スラック(余裕)算出」です。本問は「前向き計算だけで最短所要日数(=全体の工期)を求める」典型問題です。
- 実務ではネットワーク図が大きくなるため、ノードごとに「最早終了時間(ES/EF)」を表にして順に更新すると確実です。計算式(前向き)は次の通り:
FAQ
Q1:ダミー作業に日数があればどうする?
A1:ダミーは通常日数0で使われます(依存関係の表現のため)。もし問題文でダミーにも日数が指定されていればその値を使いますが、ほとんどの午前問題では0です。
A1:ダミーは通常日数0で使われます(依存関係の表現のため)。もし問題文でダミーにも日数が指定されていればその値を使いますが、ほとんどの午前問題では0です。
Q2:複数の経路が同じ最長値になったら?
A2:複数のクリティカルパスが存在することになります。全てのクリティカルパス上の作業が工期に影響するため、どちらの経路も遅れを許容できません。
A2:複数のクリティカルパスが存在することになります。全てのクリティカルパス上の作業が工期に影響するため、どちらの経路も遅れを許容できません。
Q3:速く解くコツは?
A3:図を見て「分岐→再集合」の箇所ごとに入ってくる経路の合計を比較し、最大の合計を逐次更新する前向き計算を習慣化することです。ダミーは無視して経路長だけを比較する癖をつけると速く正確になります。
A3:図を見て「分岐→再集合」の箇所ごとに入ってくる経路の合計を比較し、最大の合計を逐次更新する前向き計算を習慣化することです。ダミーは無視して経路長だけを比較する癖をつけると速く正確になります。
関連キーワード: クリティカルパス、CPM、ダミー作業、前向き計算、工期算出

\ せっかくなら /
基本情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

