题目
解题思路
本题就是简单的时间处理,即如何处理带有时分秒的数据,我用scanf的格式输入来处理时间,然后用int型变量对其时分秒进行求和比较大小,这样比较方便。具体实现代码如下:
实现代码
#include<iostream>
#include<cstdio>
#include<vector>
#include<cstring>
#include<queue>
#include<sstream>
#include<algorithm>
using namespace std;
string str1,str2,str3;
int h1,m1,s1,h2,m2,s2;
int temp1=0x3fffffff,temp2=0;
int sum1,sum2;
int main()
{
#ifdef ONLINE_JUDGE
#else
freopen("1.txt", "r", stdin);
#endif
int N;
cin>>N;
for(int i=0;i<N;++i)
{
cin>>str1;
scanf("%d:%d:%d %d:%d:%d",&h1,&m1,&s1,&h2,&m2,&s2);
sum1=h1*3600+m1*60+s1;
sum2=h2*3600+m2*60+s2;
if(temp1>sum1)
{
str2=str1;
temp1=sum1;
}
if(temp2<sum2)
{
str3=str1;
temp2=sum2;
}
}
cout<<str2<<" "<<str3;
}
总结
本题难点就是对时间的处理,该实现是一种通用的方式。
Comments | 1 条评论
博客作者 Gregorio Agney
This post challenged me to re-evaluate some of my beliefs, well done.