#include<cstdio>
struct person
{
char name[10];
int year;
int month;
int day;
}max,min;
int main()
{
int n;
max.year = 0, max.month = 0, max.day = 0, min.year = 9999, min.month = 9999, min.day = 9999;
char name[10];
int year,month,day;
int count=0;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%s %d/%d/%d",&name,&year,&month,&day);
if(((year<2014)||(year==2014&&month<9)||(year==2014&&month==9&&day<=6))&&((year>1814)||(year==1814&&month>9)||(year==1814&&month==9&&day>=6)))
{
count++;
if(year > max.year || (year == max.year && month > max.month) || (year == max.year && month == max.month && day > max.day)) {
max.year = year;
max.month = month;
max.day = day;
max.name = name;
}
if(year < min.year || (year == min.year && month < min.month) || (year == min.year && month == min.month && day < min.day)) {
min.year = year;
min.month = month;
min.day = day;
min.name = name;
}
}
}
printf("%d",count);
if(count!=0)
{
printf(" %s %s",min.name,max.name);
}
return 0;
}
注意:在最后输出的时候,年份最小实际对应年纪最长
对于max,min的初始化手法:另max为最小,另min为最大