大學生電影節在北大舉辦 ! 這天,在北大各地放了多部電影,給定每部電影的放映時間區間,區間重疊的電影不可能同時看(端點可以重合),問李雷最多可以看多少部電影。
多組資料。每組資料開頭是 n(n<=100),表示共 n 場電影。接下來 n 行,每行兩個整數 (均小於 1000 ),表示一場電影的放映區間。
對每組資料輸出最多能看幾部電影。
12
1 33 4
0 73 8
15 19
15 20
10 15
8 18
6 12
5 10
4 14
2 9
5
將所有電影按結束時間從小到大排序,第一步選結束時間最早的那部電影。 然後,每步都選和上一部選中的電影不衝突且結束時間最早的電影
複雜度:o(n+nlogn) —> o(nlogn)(略寫)
#include
using
namespace std;
struct node
a[105];
intcmp
(node a,node b)
intmain()
sort
(a,a+t,cmp)
;//排序
int sum=1;
//最少看的電影書肯定是 1
int js;
//表示結束時間
js=a[0]
.end;
for(
int i=
1;i)//依次遍歷
}printf
("%d\n"
,sum);}
}
題目其實還隱含了乙個內容,即最後一場電影沒看完也算(已看電影加一)
對於sort()函式要加第三個引數,用於表示結構體裡的某一元素
第三個引數其實是乙個函式,模板要記住
貪心題目 電影節
每一部電影都有放映區間,區間重合的電影不能同時 端點可以重合 問最多可以看多少部電影 輸入 n n場 100 接下來n行 每行兩個整數 1000 表示放映區間 輸出 最多數量 eg 輸入 31 3 3 40 7 將所有電影按照結束大小從小到大排序,第一步選擇結束最早的那部電影,然後每一步都選和上一步...
百練 4151 電影節(貪心)
總時間限制 1000ms 記憶體限制 65536kb 描述大學生電影節在北大舉辦 這天,在北大各地放了多部電影,給定每部電影的放映時間區間,區間重疊的電影不可能同時看 端點可以重合 問李雷最多可以看多少部電影。輸入多組資料。每組資料開頭是n n 100 表示共n場電影。接下來n行,每行兩個整數 0到...
OpenJudge 16067 電影節(貪心)
大學生電影節在北大舉辦 這天,在北大各地放了多部電影,給定每部電影的放映時間區間,區間重疊的電影不可能同時看 端點可以重合 問李雷最多可以看多少部電影。多組資料。每組資料開頭是n n 100 表示共n場電影。接下來n行,每行兩個整數 0到1000之間 表示一場電影的放映區間 n 0則資料結束 對每組...