题目链接:http://hdu.hustoj.com/showproblem.php?pid=2037

今年暑假不AC

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 63745    Accepted Submission(s): 34384

Problem Description
“今年暑假不AC?”
“是的。”
“那你干什么呢?”
“看世界杯呀,笨蛋!”
“@#$%^&*%...”

确实如此,世界杯来了,球迷的节日也来了,估计很多ACMer也会抛开电脑,奔向电视了。
作为球迷,一定想看尽量多的完整的比赛,当然,作为新时代的好青年,你一定还会看一些其它的节目,比如新闻联播(永远不要忘记关心国家大事)、非常6+7、超级女生,以及王小丫的《开心辞典》等等,假设你已经知道了所有你喜欢看的电视节目的转播时间表,你会合理安排吗?(目标是能看尽量多的完整节目)

Input
输入数据包含多个测试实例,每个测试实例的第一行只有一个整数n(n<=100),表示你喜欢看的节目的总数,然后是n行数据,每行包括两个数据Ti_s,Ti_e (1<=i<=n),分别表示第i个节目的开始和结束时间,为了简化问题,每个时间都用一个正整数表示。n=0表示输入结束,不做处理。
Output
对于每个测试实例,输出能完整看到的电视节目的个数,每个测试实例的输出占一行。
Sample Input
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 0
Sample Output
5
#include<stdio.h>
#include<stdlib.h>//声明节目结构
typedef struct channel
{int star;//开始时间int end;//结束时间
}Chan;//获取列表中某个时间点后开始的节目中最早结束的节目结束时间,如不存在返回-1
int getFirstEndAfter
(Chan *, //节目列表int,   //当前时间int    //节目数量
);
int main(int argc, char *argv[])
{int n,            //想看的节目数量minend,        //当前最早结束的节目nchan;        //当前已看的节目while (scanf("%d", &n) != EOF&&n != 0){//声明n个节目Chan *chanlist = (Chan *)malloc(sizeof(Chan) * n);//获取n个节目的属性for (int i = 0; i < n; i++){scanf("%d%d", &chanlist[i].star, &chanlist[i].end);}//初始化参数minend = nchan = 0;//计算能看的节目数while ((minend = getFirstEndAfter(chanlist, minend, n)) > -1){nchan++;}//输出结果,释放资源printf("%d\n", nchan);free(chanlist);}
}//Function Defination
int getFirstEndAfter(Chan *chs, int now, int n)
{int min = -1;//最短时间for (int i = 0; i < n; i++){if (chs[i].star >= now && (min == -1 || chs[i].end < min)){min = chs[i].end;}}return min;
}

转载于:https://www.cnblogs.com/friend-A/p/7900687.html

嘟嘟噜~~~第一次写博,纪念一下相关推荐

  1. 携程航班信息爬取(python)---第一次写博客,不好请别见外!

    1.航班信息接口 api="https://flights.ctrip.com/itinerary/api/12808/products",这个接口中包含了所要查询的航班信息. * ...

  2. 创客学院 level1第一节学习完成(第一次写博客)

    第一次写博客 创客学院 level1第一节学习完成 断断续续花了大概两天,已经在同学(龙欢)的推荐下,学习了java最基本的语法,大概就是和C语言差不了多少,感觉还是好接受,在昨天晚上也是和同学讨论了 ...

  3. csdn官网第一次写博客 一直显示不要使用默认标题

    csdn官网第一次写博客 一直显示不要使用默认标题 解决方案: 注:由此开启新的旅程

  4. 第一次写博客,在正式记录之前,先来一个背景简介和分享

    第一次写博客.在正式记录之前,先来一个背景简介和分享. 文章目录 毕业 一.汽车厂是怎么样的工厂? 二.汽车厂的技术路线步伐 1.总装车间维修电工 2.学习PLC编程 3.打开PC应用程序exe的大门 ...

  5. 看C语言教学视频后第一次写博客

    看完老师的课程教学视频过后第一次写博客,我用的是Visual Studio编译软件写的,我发现在这个新的软件里面输入scanf()不能运行成功而必须要是scanf_s()才能使得程序运行,下面是我编写 ...

  6. 码龄四年-第一次写博客

    码龄四年第一次写博客 就写三句话这是第二句 祝大家牛转钱坤!!!

  7. 编程日记——第一次写博客

    2020.3.27 今天是一个值得纪念的日子,因为这是我第一次在CSDN写博客的日子. 欢迎各位来阅读我的编程日记 大家好,我是一名大二的学生,因为对编程一直很感兴趣,所以在填报专业的时候,非常开心得 ...

  8. CSDN第一次写博客时的模板

    这里写自定义目录标题 欢迎使用Markdown编辑器 新的改变 功能快捷键 合理的创建标题,有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一 ...

  9. 第一次写博客,推荐一款电脑屏幕录制软件

    这是开通了csdn之后,第一次写,很久之前就知道博客,却一直没有注意其重要性,直至大三,课程中得到老师的任务,才写下这第一篇博客 至于为什么写这个 那当然是我酝(lai)酿(bu)已(ji)久(xia ...

  10. 第一次写博客+学习学习markdown

    我的第一篇博客 欢迎使用Markdown编(xiā)辑(gǎo)器 新的改变 功能快捷键 合理的创建标题,有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你 ...

最新文章

  1. yii权限rbac验证三张表字段说明
  2. Android-获取窗口的宽度与高度
  3. 在Windows上使用VSCode远程链接到Linux上开发并调试C++程序
  4. dos debug命令
  5. 4 读写文件_块存储、文件存储、对象存储的区别
  6. Codeforces Round #250 (Div. 2)—A. The Child and Homework
  7. LeetCode(977)——有序数组的平方(JavaScript)
  8. Atitit.数据库事务隔离级别 attilax 总结
  9. android 万能播放器
  10. pid温度控制算法c语言程序,温度控制的PID算法的C语言程序
  11. mysql +cobar_数据库中间件Cobar功能探究
  12. 缺少netcfg.hlp无法上网的解决
  13. 逗号代码 python_Python代码。是逗号运算符吗?
  14. Android判断当前系统语言
  15. 田野调查手记·浮山摩崖石刻(一)
  16. 网络测速一原理及实例
  17. Maven依赖版本号不生效
  18. python拼接字符串的方法,Python2中文字符串拼接
  19. Flutter路由传参
  20. 视频直播APP开发分析

热门文章

  1. [编程题]字符串分隔
  2. 基于宝塔面板把网站和数据库文件备份到又拍云存储空间图文教程
  3. 获取当前的格林尼治时间
  4. CSMA/CD-CSMA/CA
  5. 像玩游戏一样做游戏 | Google Play 开发者故事
  6. java中curr是什么意思_curr.是什么意思
  7. javascript案例26——求100以内所有7倍数之和
  8. 计算机的虚拟接口,怎样设置计算机的虚拟目录和虚拟端口
  9. 【大数据存储】Java操作jena练习
  10. MAC电脑突然开不了机的解决方案