1006. Sign In and Sign Out (25)
找最值的下标,简单题
#include<iostream>
#include<cstdio>
#include<string.h>
using namespace std;
struct people{
int in,out;
char name[20];
}p[1000];
int main(){
int n,hh,mm,ss;
cin>>n;
for(int i=0;i<n;i++){
scanf("%s",p[i].name);
scanf("%d:%d:%d",&hh,&mm,&ss);
p[i].in=hh*3600+mm*60+ss;
scanf("%d:%d:%d",&hh,&mm,&ss);
p[i].out=hh*3600+mm*60+ss;
}
int inMin=25*3600,inLoc=-1,outMax=-1,outLoc=-1;
for(int i=0;i<n;i++){
if(p[i].in<inMin)
inMin=p[i].in,inLoc=i;
if(p[i].out>outMax)
outMax=p[i].out,outLoc=i;
}
printf("%s %s",p[inLoc].name,p[outLoc].name);
return 0;
}