有三个时间,找出最早的和最晚的,,
以前自己只会一个一个的比较,先比较时,再比较分,再比较秒.....比较繁琐
在练习PAT甲级 1006 Sign In and Sign Out (25分)题中,参考的一篇博客,写的很好。https://blog.csdn.net/weixin_43847596/article/details/112784307?spm=1001.2014.3001.5502
因为他们的时间格式都是定长的,那么用 string 存起来,string 直接比较就是它们的字典序了。
代码如下:
#include<bits/stdc++.h>
using namespace std;
int main(){
int m;
cin>>m;//定义要输入几个时间
string aid,atime;
string bid,btime;
int i=1;
while(m--){
string id,b,c;
cin>>id>>b>>c;
if(i==1||b<atime){
aid=id;
atime=b;
}
if(i==1||c > btime){
bid=id;
btime=c;
}
i=0;
}
cout<<aid<<" "<<bid;
return 0;
}