問你如何用一個教室安排盡量多的活動?
鏈接
按結束時間排序活動,然后嘗試安排即可問你至少需要幾個教室才能安排全部的活動?
把所有結束時間開始時間放在一起排序,碰到開始時間加一,結束時間減一,峰值便是至少需要的教室個數。
- 問你至少需要幾個教室才能安排全部的活動?具體是怎么安排的。
鏈接
按照開始時間排序優先安排活動,如果沖突,則加一個教室。
簡單地理解一下,策略是這樣,我們把活動按照開始時間有小到大的順序排序。假設目前已經分配了k個教室(顯然k初始等于0),對于當前這個活動,
(1) 如果它能安排在k個教室里的某一個,則把它安排在其中的任何一個教室里,k不變。
(2) 否則它和每個教室里的活動都沖突,則增加一個教室,安排這個活動。