用了一个set记录校友,读取来宾的时候做两件事:
1、判断是否是校友,是则ans1++
2、判断是否是最年长的,是则更新ans2和生日最小值
#include<iostream>
#include<set>
#include<algorithm>
using namespace std;
int N,M;
int ans1=0,Min=100000000;
string ans2;
set<string> alumni;
int main(){
cin>>N;
for(int i=0;i<N;i++){
string x;
cin>>x;
alumni.insert(x);
}
cin>>M;
for(int i=0;i<M;i++){
string guest;
cin>>guest;
if(stoi(guest.substr(6,8))<Min){
Min=stoi(guest.substr(6,8));
ans2=guest;
}
if(alumni.find(guest)!=alumni.end()){
ans1++;
}
}
printf("%d\n",ans1);
cout<<ans2<<endl;
return 0;
}