博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU1234 开门人和关门人
阅读量:6080 次
发布时间:2019-06-20

本文共 1543 字,大约阅读时间需要 5 分钟。

问题链接:。

问题简述:参见上述链接。

问题分析这个问题不是很困难,还是可以锻炼人处理输入输出的能力。

解决问题时,做两个排序,就可以找出开门的人和关门的人。程序中时间转换为整数(秒单位),以便比较排序。

程序说明这里同时给出C和C++的程序。

C和C++的排序库程序不一样,分别是qsort()和sort,参数不同,比较程序形式上也不一样。

一些细节还是需要注意的,C++程序中的比较函数,参数是常量和引用。

另外,在出来格式化输入方面,还是C语言有优势,所以C++程序中使用C语言的代码处理输入。

这两个程序都不是最佳解法,参见以下的链接。

参考链接:。其中的程序一边读入数据一边计算开门人和关门人,省去结构数组。

AC通过的C语言程序如下:

/* HDU1234 开门人和关门人 */#include 
#include
struct node{ char name[20]; int starttime; int endtime;} record[1000];int cmp1(const void * a, const void * b){ struct node *x = (struct node *) a; struct node *y = (struct node *) b; return x->starttime - y->starttime;}int cmp2(const void * a, const void * b){ struct node *x = (struct node *) a; struct node *y = (struct node *) b; return y->endtime - x->endtime;}int main(void){ int n, m, i; int h, mi, s; // 读入总天数(测试组数) scanf("%d", &n); while(n--) { // 读入记录数 scanf("%d", &m); // 读入各个记录 for(i=0; i
AC通过的C++语言程序如下:

/* HDU1234 开门人和关门人 */#include 
#include
#include
using namespace std;struct node{ char name[20]; int starttime; int endtime;} record[1000];bool cmp1(const node& a, const node& b){ return a.starttime < b.starttime;}bool cmp2(const node& a, const node& b){ return a.endtime > b.endtime;}int main(){ int n, m; int h, mi, s; // 读入总天数(测试组数) cin >> n; while(n--) { // 读入记录数 cin >> m; // 读入各个记录 for(int i=0; i

转载于:https://www.cnblogs.com/tigerisland/p/7564719.html

你可能感兴趣的文章
javafx for android or ios ?
查看>>
微软职位内部推荐-Senior Software Engineer II-Sharepoint
查看>>
sql 字符串操作
查看>>
【转】Android布局优化之ViewStub
查看>>
网络安全管理技术作业-SNMP实验报告
查看>>
根据Uri获取文件的绝对路径
查看>>
Flutter 插件开发:以微信SDK为例
查看>>
.NET[C#]中NullReferenceException(未将对象引用到实例)是什么问题?如何修复处理?...
查看>>
边缘控制平面Ambassador全解读
查看>>
Windows Phone 7 利用计时器DispatcherTimer创建时钟
查看>>
程序员最喜爱的12个Android应用开发框架二(转)
查看>>
vim学习与理解
查看>>
DIRECTSHOW在VS2005中PVOID64问题和配置问题
查看>>
MapReduce的模式,算法以及用例
查看>>
《Advanced Linux Programming》读书笔记(1)
查看>>
zabbix agent item
查看>>
一步一步学习SignalR进行实时通信_7_非代理
查看>>
AOL重组为两大业务部门 全球裁员500人
查看>>
字符设备与块设备的区别
查看>>
为什么我弃用GNOME转向KDE(2)
查看>>