您的位置:首页 > 其它

活动选择问题

2018-01-25 11:24 197 查看


活动选择问题

Time Limit: 1000MS Memory Limit: 65536KB

Submit Statistic


Problem Description

sdut 大学生艺术中心每天都有n个活动申请举办,但是为了举办更多的活动,必须要放弃一些活动,求出每天最多能举办多少活动。


Input

输入包括多组输入,每组输入第一行为申请的活动数n(n<100),从第2行到n+1行,每行两个数,是每个活动的开始时间b,结束时间e;


Output

输出每天最多能举办的活动数。


Example Input

12
15 20
15 19
8 18
10 15
4 14
6 12
5 10
2 9
3 8
0 7
3 4
1 3



Example Output

5


01
#include
<stdio.h>
02
#include
<stdlib.h>
03
04
int
main()
05
{
06
int
n,
i, j, start[101], end[101], num, t, a;
07
while
(
scanf
(
"%d"
,
&n)!=EOF)
08
{
09
for
(i
= 0;i<n;i++)
10
{
11
scanf
(
"%d%d"
,
&start[i], &end[i]);
12
}
13
for
(i
= 0;i<n-1;i++)
14
{
15
for
(j
= 0;j<n-1-i;j++)
16
{
17
if
(end[j]>end[j+1])
18
{
19
t
= end[j];end[j] = end[j+1]; end[j+1] = t;
20
t
= start[j];start[j] = start[j+1];start[j+1] = t;
21
}
22
}
23
}
24
num
= 1;a = 0;
25
for
(i
= 1;i<n;i++)
26
{
27
if
(start[i]>=end[a])
28
{
29
a
= i;
30
num++;
31
}
32
}
33
printf
(
"%d\n"
,
num);
34
}
35
return
0;
36
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: