显示代码纯文本
#include <iostream>
#include <cstdio>
#include <cstring>
#include <memory.h>
#include <map>
using namespace std;
map<string,int> dic1,dic2;
map<string,int>::iterator iter,itere;
int main(void)
{
freopen("bird.in","r",stdin);
freopen("bird.out","w",stdout);
int i,n,c1=0,c2=0,maxnum=0,temp;
char cht[100];
string ch;
cin>>n;
for (i=1;i<=n;i++)
{
cin>>ch;
dic1[ch]++;
}
memset(cht,0,sizeof(cht));
scanf("\n");
while (scanf("%[a-z]%*[^a-z]",&cht)==1)
{
ch=cht;
if (!dic1[ch])
{
if (!dic2[ch])
c1++;
dic2[ch]++;
}
memset(cht,0,sizeof(cht));
}
itere=dic2.end();
for (iter=dic2.begin();iter!=itere;iter++)
{
temp=(*iter).second;
if (maxnum<temp)
maxnum=temp;
}
for (iter=dic2.begin();iter!=itere;iter++)
{
temp=(*iter).second;
if (maxnum==temp)
c2++;
}
cout<<c1<<endl;
cout<<c2<<endl;
for (iter=dic2.begin();iter!=itere;iter++)
{
temp=(*iter).second;
if (maxnum==temp)
cout<<(*iter).first<<endl;
}
return(0);
}