-->
当前位置:首页 > 题库 > 正文内容

函数题:电影安排

Luz3年前 (2022-10-23)题库342
终于到周末了,明明是特别喜欢看电影。他想在一天内尽量多的看到完整的多部电影。 现在他把他喜欢的电影的播放时间表给你,希望你能帮他合理安排。
### 输入格式:
输入的第一行是一个整数n(n<=100),表示明明喜欢的电影的总数。 接下来n行,每行输入两个整数si和ei(1<=i<=n),表示第i个电影的开始和结束时间,为了简化问题,每个时间都用一个正整数表示。
### 输出格式:
输出能完整看到的电影的个数。
### 函数接口定义:
c
int Schedule(TIME a[],int n);//根据n部电影在一天的放映时间,返回至多能安排的电影场数
int cmp(TIME *a,TIME *b);//按结束时间升序排序的qsort排序规则,此处不表

快速排序库函数qsort原型为:void qsort ( void * base, size_t num, size_t size, int ( * comparator ) ( const void *, const void * ) ); 例如:qsort(a,n,sizeof(TIME),cmp);表示将数组a前n个元素按照cmp排序规则进行排序

### 裁判测试程序样例:
c
#include<bits/stdc++.h>
using namespace std;
typedef struct
{
int start_time;
int end_time;
}TIME;
int Schedule(TIME a[],int n);//根据n部电影在一天的放映时间,返回至多能安排的电影场数
bool cmp(const TIME &a,const TIME &b);//按结束时间升序排序的qsort排序规则,此处不表
int main()
{TIME a[100];
int n,i,k;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d%d",&a[i].start_time,&a[i].end_time);
k= Schedule(a,n);
printf("%d\n",k);
}
bool cmp(const TIME &a,const TIME &b) //按结束时间递增
{
return a.end_time<b.end_time;
}
/* 请在这里填写答案 */


### 输入样例:

第一行输入一个整数n,表示有n场电影,随后n行,每行输入一场电影的开始时间和结束时间,中间用空格分隔。
in
12
1 3
3 4
0 7
3 8
15 19
15 20
10 15
8 18
6 12
5 10
4 14
2 9


### 输出样例:

输出最多能看的电影场数

out
5







答案:若无答案欢迎评论

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。