求解答
安排教室 学校仅有的一间社团活动教室需要同学申请通过后才能使用,同一时段内,只有一个社团可以使用社团活动教室。
有 nn 个社团分别提出了申请,每个社团想使用的时段都是连续的,第 ii 个社团申请的使用时段为从第 a_ia i节课上课时到第 b_ib i 节课下课时的这段时间。
显然,如果有两个社团的申请时段有重合,那么他们的申请不可能都被通过。现在,由你来决定每个申请是否被通过,问最多有多少个社团能够使用教室。
输入格式
从标准输入读入数据。
第一行输入一个正整数 nn(n\le1000n≤1000)。
接下来 nn 行,每行输入两个正整数 a_i,b_ia
i
,b
i
(a_i\le b_i\le 10^6a
i
≤b
i
≤10
6
)。
输出格式
输出到标准输出。
输出一个整数,表示最多有多少个社团能够使用教室。
#include <bits/stdc++.h>
using namespace std;
const int N = 1005;
int n;
struct Seg{
int a, b;
} c[N];
bool cmp(Seg x, Seg y){
/【请补全】/
}
int main() {
scanf("%d", &n);
for(int i = 1; i <= n; ++i)
scanf("%d%d", &c[i].a, &c[i].b);
sort(c + 1, c + n + 1, cmp);
int ans = 0, lim = 0;
for(int i = 1; i <= n; ++i){
if(/*****【请补全】*****/){
++ans;
/*****【请补全】*****/
}
}
printf("%d\n", ans);
return 0;
}
解答对了肯定采纳