题目描述
某一天电影院多个放映厅要放电影,小王从中选择了N部喜欢的电影(时间可能有冲突)。另外,小王还接到通知,必须看一部宣传片,问小王最多能看几部电影。
输入描述
输入文件中包含多个测试数据。每个测试数据的第1行为一个正整数N(1≤N≤20),表示小王选择的电影数(不包括宣传片);第2行为N部电影各自的开始时间s,第3行为N部电影各自的结束时间t,0≤s<t≤24,s和t均为整数;如果这N部电影中某些电影时间有冲突,则表示这些电影是在不同放映厅放映的;第4行为两个整数m和n,表示宣传片的开始时间和结束时间,0≤m<n≤24。N = 0表示输入结束。
输出描述
对每个测试数据,输出小王最多能观看到的电影数(不包括必须看的宣传片)。
样例输入
8
0 1 4 7 9 10 13 12
7 4 9 13 15 13 19 15
5 10
0
样例输出
3
运行限制
- 最大运行时间:1s
- 最大运行内存: 32M
思路:注意到每个测试数据中电影数量很小。先将和宣传片时间冲突必定看不了的电影去掉,剩下的电影里根据开始时间排序,最后通过DFS找出最多能看的电影数量。