貪心演算法 禮堂的安排

2021-07-05 02:18:49 字數 715 閱讀 7484

學校在最近幾天有若干個活動,這些活動都需要使用學校的大禮堂,但是在同一時間,禮堂只能被乙個活動所使用。現在給出n個活動使用禮堂的起始時間和終止時間,請幫助辦公室人員找出乙個活動的安排方案,使得安排的活動盡量多。

第一行乙個整數n

接下來的n行,每行兩個整數,第乙個是起始時間,第二個是終止時間。

最多能夠安排的活動的個數。

3 51 4

12 14

8 12

0 68 11

6 10

5 7

3 85 9

2 13

首先將各個活動按照結束時間進行排序。第乙個結束的活動必選。然後依次考慮剩下的各個活動,如果該活動的開始時間小於上乙個活動的結束時間,則不選;

否則,將活動方案數加一。

#include using namespace std;

int n,begin_time[1001],end_time[1001];

void init()

void qsort(int low,int high)

}if(low < j)

qsort(low,j);

if(i < high)

qsort(i,high);

}void solve()

}cout << ans << endl;

}int main()

活動安排 貪心演算法

活動安排問題就是要在所給的活動集合中選出最大的相容活動子集合,是可以用貪心演算法有效求解的很好例子。該問題要求高效地安排一系列爭用某一公共資源的活動。貪心演算法提供了乙個簡單 漂亮的方法使得盡可能多的活動能相容地使用公共資源。設有n個活動的集合e 其中每個活動都要求使用同一資源,如演講會場等,而在同...

活動安排問題 貪心演算法

問題表述 設有n個活動的集合 e 其中每個活動都要求使用同一資源,如演講會場等,而在同一時間內只有乙個活動能使用這一資源。每個活 i都有乙個要求使用該資源的起始時間 si和乙個結束時間 fi,且 si 如果選擇了活動 i,則它在半開時間區間 si,fi 內占用資源。若區間 si,fi 與區間 sj,...

活動安排問題(貪心演算法)

類似的問題是 選點問題和區間覆蓋問題。活動安排問題就是要在所給的活動集合中選出最大的相容活動子集合,是可以用貪心演算法有效求解的很好例子。該問題要求高效地安排一系列爭用某一公共資源的活動。貪心演算法提供了乙個簡單 漂亮的方法使得盡可能多的活動能相容地使用公共資源。設有n個活動的集合e 其中每個活動都...