http://acm.hdu.edu.cn/showproblem.php?pid=1234
#include <stdio.h>
#include <string.h>
#include <algorithm> //用到sort
using namespace std; //std必须
struct E //用字符串保存格式时间,比较时间大小转换为比较字符串大小
{
char no[20];
char begin[10];
char end[10];
};
E buf[10000];
bool cmp(E A,E B) //开始时间排序,最小时间在前
{
return strcmp(A.begin,B.begin)<0;
}
bool cmp1(E A,E B) //结束时间排序,最大时间在前
{
return strcmp(A.end,B.end)>0;
}
int main()
{
int n,m,i;
scanf("%d",&n);
while (n--)
{
scanf("%d",&m);
for (i=1;i<=m;i++)
{
scanf("%s%s%s",buf[i].no,buf[i].begin,buf[i].end);
}
sort(buf+1,buf+1+m,cmp); //两个时间表,签到与签离,所以排序两次
printf("%s ",buf[1].no);
sort(buf+1,buf+1+m,cmp1);
printf("%s\n",buf[1].no);
}
return 0;
}