単元一覧 › 大学数学 アルゴリズムと計算量

アルゴリズムと計算量の問題

難易度 2教科書の演習問題レベル大学数学 アルゴリズムと計算量

ある会議室を使いたい 件の予約希望があり、予約 ()は時刻 に始まり時刻 に終わる(区間 を使う)。

予約
開始
終了

つの予約 は、 または のとき両立する(同時に採用できる)とする。次の貪欲法で、互いに両立する予約を選ぶ。

  • 予約を終了時刻 の小さい順に並べる。
  • その順に予約を つずつ調べ、それまでに選んだどの予約とも両立するならば選び、そうでなければ選ばない。

この貪欲法で選ばれる予約の番号 の集合を求めよ。

この問題で使うもの

ヒント

行き詰まったら、上から順に 1 つずつ開いてください。

ヒント 1

まず 件の予約を終了時刻 の小さい順に並べかえましょう。

ヒント 2

終了時刻の順に選んでいくので、新しい予約が両立するかどうかは「開始時刻が、最後に選んだ予約の終了時刻以上か」だけで判定できます。

ヒント 3

最初に選ばれるのは終了時刻が最小の予約 で、次に開始時刻が 以上で最初に現れる予約 が選ばれます。続きを調べましょう。

答えと解説

答えを見る
結果を記録する(このブラウザにだけ保存されます):
解説を読む

終了時刻の小さい順に並べると(終了時刻はすべて異なるので順序は一意に決まる)

となる。

この順に調べると、選んだ予約はいつも終了時刻の小さい順に並ぶので、新しい予約 が選んだ予約すべてと両立するのは、 が最後に選んだ予約の終了時刻以上のときである。

  • 予約 : まだ何も選んでいないので選ぶ。最後の終了時刻は 。
  • 予約 : なので選ばない。
  • 予約 : なので選ぶ。最後の終了時刻は 。
  • 予約 : なので選ばない。
  • 予約 : なので選ばない。
  • 予約 : なので選ぶ。最後の終了時刻は 。
  • 予約 : なので選ぶ。最後の終了時刻は 。
  • 予約 : なので選ばない。
  • 予約 : なので選ばない。

よって選ばれる予約は である(この貪欲法は、両立する予約の個数を最大にすることが知られている)。

別解

各予約の区間は 1:、2:、3:、4:、5:、6:、7:、8:、9:。

終了時刻の小さい順(終了時刻はすべて異なる)は、予約 2()、1()、3()、5()、4()、6()、8()、7()、9()。

順に調べる。
1. 予約 2 : 何も選んでいないので選ぶ。選択済み 。
2. 予約 1 : は偽、 も偽。両立しないので選ばない。
3. 予約 3 : 予約 2 と で両立。選ぶ。選択済み 。
4. 予約 5 : 予約 2 と で両立だが、予約 3 とは重なる。選ばない。
5. 予約 4 : 予約 3 と は偽、 も偽。選ばない。
6. 予約 6 : 予約 2 とは 、予約 3 とは で両立。選ぶ。選択済み 。
7. 予約 8 : 予約 6 と などで、選択済みすべてと両立。選ぶ。選択済み 。
8. 予約 7 : 予約 6 と重なる。選ばない。
9. 予約 9 : 予約 8 と重なる。選ばない。

検算: 選ばれた は互いに重ならない(、、)。選ばれなかった各予約は、選ばれたいずれかと重なっていることも上で確認した。

よって選ばれる予約の番号の集合は 。

この問題の確認

AI が作成した問題です。公開前に次の確認を行いました。確認の方法について

間違いを報告する

この問題の誤り・分かりにくい点・難易度や学年のずれを知らせる
どこについての報告ですか

報告の内容と問題の番号を保存します。名前やメールアドレスは保存しません。

関連する問題