#include<stdio.h>
struct P{
char id[20];
int hour,minute,second;
}temp,ear,late;
//temp
bool cmp(struct P a,struct P b){
if(a.hour!=b.hour) return a.hour>=b.hour;
if(a.minute!=b.minute) return a.minute>=b.minute;
return a.second>=b.second;
}
void init(){
ear.hour=24;
ear.minute=60;
ear.second=60;
late.hour=0;
late.minute=0;
late.second=0;
}
int main(){
init();
int M;
scanf("%d",&M);
for(int i=0;i<M;i++){
scanf("%s%d:%d:%d",temp.id,&temp.hour,&temp.minute,&temp.second);
if(cmp(ear,temp)) ear=temp;
scanf("%d:%d:%d",&temp.hour,&temp.minute,&temp.second);
if(cmp(temp,late)) late=temp;
}
printf("%s %s",ear.id,late.id);
}
1006. Sign In and Sign Out (25) PAT 甲级
最新推荐文章于 2022-08-12 23:25:22 发布
本文介绍了一个使用C语言编写的程序,该程序通过结构体来表示时间,并定义了一个比较函数来找出最早和最晚的时间记录。程序首先初始化了最早和最晚时间的边界值,然后读取多组时间数据,每组包括一个标识符和两个时间点,通过比较函数确定每个输入中最早和最晚的时间。
699

被折叠的 条评论
为什么被折叠?



