题目标号:A-1005
这道难度不是很大,将字符串转化成数字,比较后存储最大值与最小值即可。
题目:
菜鸟代码:
#include "stdio.h"
typedef struct
{
char name[15] ;
int start ;
int end;
}Per ;
int getTime( char time[] )
{
int hour , min , sec ;
hour = ( time[0] - '0' ) *10 + time[1] - '0' ;
min = ( time[3] - '0' ) *10 + time[4] - '0' ;
sec = ( time[6] - '0' ) *10 + time[7] - '0' ;
return hour * 3600 + min * 60 + sec ;
}
int main(void)
{
int count ;
Per * unlock = (Per*)malloc(sizeof(Per));
Per * lock = (Per*)malloc(sizeof(Per));
unlock->start = -1;
lock->end = -1;
scanf("%d" , &count);
while(count--)
{
Per * temp = (Per*)malloc(sizeof(Per));
char tName[15] , sTime[10] , eTime[10] , string[50];
scanf("%s %s %s" ,temp->name , sTime , eTime);
temp->start = getTime(sTime);
temp->end = getTime(eTime);
if(unlock->start == -1)
{
unlock = temp ;
lock = temp ;
}
if ( temp->start < unlock->start )
{
unlock = temp ;
}
if( temp->end > lock->end)
{
lock = temp ;
}
}
printf("%s %s\n" , unlock->name , lock->name);
return 0;
}