水题
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
string ans1, ans2;
struct node {
string a;
int shh, smm, sss;
int ehh, emm, ess;
};
int minn, maxn;
struct node z[1001];
int main() {
int n;
cin >> n;
for (int i = 1; i <= n; i++) {
cin >> z[i].a;
scanf("%d:%d:%d %d:%d:%d", &z[i].shh, &z[i].smm, &z[i].sss, &z[i].ehh, &z[i].emm, &z[i].ess);
}
minn = z[1].shh * 3600 + z[1].smm * 60 + z[1].sss;
maxn = z[1].ehh * 3600 + z[1].emm * 60 + z[1].ess;
ans1 = z[1].a;
ans2 = z[1].a;
for (int i = 1; i <= n; i++) {
if (z[i].shh * 3600 + z[i].smm * 60 + z[i].sss < minn) {
minn = z[i].shh * 3600 + z[i].smm * 60 + z[i].sss;
ans1 = z[i].a;
}
if (z[i].ehh * 3600 + z[i].emm * 60 + z[i].ess > maxn) {
maxn = z[i].ehh * 3600 + z[i].emm * 60 + z[i].ess;
ans2 = z[i].a;
}
}
cout << ans1 << " " << ans2 <<endl;
return 0;
}