活动选择问题
2018-01-25 11:24
197 查看
活动选择问题
Time Limit: 1000MS Memory Limit: 65536KBSubmit 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 | } |
相关文章推荐
- 『算法设计_伪代码』贪心算法_活动选择问题
- 问题 E: 【例6.5】活动选择
- 动态规划——贪心算法——活动选择问题 收藏
- 2。活动选择问题
- SDUTOJ 2073 —— 活动选择问题
- 贪心算法活动选择问题
- 活动选择问题变形_值之和最大的兼容活动子集
- 活动选择问题(活动安排问题)(最大数目活动选择问题)贪心算法C++实现
- 算法导论程序40--贪心算法(活动选择问题)
- 活动选择问题
- 【算法导论】贪心算法之活动选择问题
- 活动选择问题 动态规划算法(最大子集合或最大收益)
- 贪心算法-活动选择问题
- 【算法导论】贪心算法之活动选择问题
- 活动选择问题
- [置顶] 活动选择问题(1)-动态规划分析
- 经典问题-活动选择问题-DP和贪心
- 活动选择问题 贪心
- 活动选择问题
- 活动选择问题