貪心之活動選擇

2021-08-17 15:17:26 字數 1163 閱讀 4889

活動選擇

time limit: 1000 ms memory limit: 65536 kib

submit statistic discuss

problem description

學校的大學生藝術中心週日將面向全校各個學院的學生社團開放,但活動中心同時只能供乙個社團活動使用,並且每乙個社團活動開始後都不能中斷。現在各個社團都提交了他們使用該中心的活動計畫(即活動的開始時刻和截止時刻)。請設計乙個演算法來找到乙個最佳的分配序列,以能夠在大學生藝術中心安排不衝突的盡可能多的社團活動。

比如有5個活動,開始與截止時刻分別為:

最佳安排序列為:1,4,5。

input

第一行輸入活動數目n(0<n<100);

以後輸入n行,分別輸入序號為1到n的活動使用中心的開始時刻a與截止時刻b(a,b為整數且0<=a,b<24,a,b輸入以空格分隔)。

output

輸出最佳安排序列所包含的各個活動(按照活動被安排的次序,兩個活動之間用逗號分隔)。

sample input

6 8 10

9 16

11 16

14 15

10 14

7 11

sample output

1,5,4

hint

source

#include

#include

#include

struct node

a[101],t;

int main()

int f,j,time;

for(i=0;i1;i++)

}t=a[i];a[i]=a[f];a[f]=t;

}//排好序,按照結束時間進行排序,從小到大

time=0;

for(i=0;iif(i==0)

else

else i++;}}

printf("\n");

return

0;}

think:

1.把所有的時間按照結束時間從小到大進行排序,選取結束時間最早的

2.在後面的所有開始時間在結束時間之後的,並且結束時間最早的在輸出就可以

note:

要注意結束時間的更新,和輸出的格式要特別輸出

活動選擇 貪心)

time limit 1000ms memory limit 65536kb problem description 學校的大學生藝術中心週日將面向全校各個學院的學生社團開放,但活動中心同時只能供乙個社團活動使用,並且每乙個社團活動開始後都不能中斷。現在各個社團都提交了他們使用該中心的活動計畫 即活...

貪心 活動選擇

problem description 學校的大學生藝術中心週日將面向全校各個學院的學生社團開放,但活動中心同時只能供乙個社團活動使用,並且每乙個社團活動開始後都不能中斷。現在各個社團都提交了他們使用該中心的活動計畫 即活動的開始時刻和截止時刻 請設計乙個演算法來找到乙個最佳的分配序列,以能夠在大學...

活動選擇 貪心

題目描述 假設有乙個需要使用某一資源的n個活動所組成的集合s,s 該資源一次只能被乙個活動所占用,每乙個活動有乙個開始時間bi和結束時間ei bi ei 若bi ej或bj ei,則稱活動i和活動j相容。你的任務是 選擇由互相相容的活動所組成的最大集合。輸入共n 1行,其中第1行為n,第2行到第n ...