オペレーションズ・リサーチの問題
頂点 からなる無向グラフがあり、辺とその長さは次のとおりである。ここに書かれていない辺はない。
| 辺 | 長さ | 辺 | 長さ | 辺 | 長さ |
|---|---|---|---|---|---|
| — | — | — | |||
| — | — | — | |||
| — | — | — |
路の長さを、通る辺の長さの和とする。頂点 から頂点 への最短路(長さが最小の路)は何本あるか求めよ。
この問題で使うもの
- 最短路の本数の数え上げ(説明と入口の問題)
この問題を解けるようになるまで(5 技能)
読み込み中…
右端(太枠)がこの問題で使う技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。
ヒント
行き詰まったら、上から順に 1 つずつ開いてください。
ヒント 1
技能「最短路の本数の数え上げ」を使う。まず から各頂点への最短距離 の表を作ろう。
ヒント 2
最短路に使える辺は を満たす辺 だけ。そのような辺について を から順に計算する。
ヒント 3
最短距離は 。また となる。
答えと解説
答えを見る
どこでつまずきましたか?(選ぶと、戻る場所を案内します)
解説を読む
手順 1:最短距離 を求める。
辺の長さはすべて正なので、 に近い頂点から順に最短距離を確定できる(緩和 をくり返しても同じ結果になる)。
- ( 経由は で長い)
手順 2: を満たす辺(最短路に使える向き)だけを残す。
- : ○
- : ○、: ○
- : ○、: ○
- : ○、: ×
- : ○、: ○
手順 3: を の小さい順に足し合わせる。 ここで和は手順 2 で残した辺 についてとる。
(確認:長さ の路は 、、、、、 の 本である。)
よって、最短路の本数は 本である。
別解
から各頂点への最短距離と最短路の本数を、ダイクストラ法の考え方で順に求める。
- : 距離 0、本数 1。
- : 距離は — の 2。 経由は なので長い。本数 1。
- : 直接 — で 3、 経由 —— で 。ともに 3 なので距離 3、本数 2。
- : 経由で 、 経由で 。距離 5、本数は 。
- : 経由で 、 経由で 。距離 6、本数は 経由の 3。
- : 経由で 、 経由で 。距離 9、本数は 。
辺の長さはすべて正なので、最短路は同じ頂点を通らない。よって数え漏れも重複もない。
検算として 6 本を列挙する。
1.
2.
3.
4.
5.
6.
どれも長さは 9 である。
答え: 6 本