上代码:
#include<bits/stdc++.h>
using namespace std;
string ci[105],s,dan;
int n,ans=0;
bool flag[105];
int main()
{
scanf("%d",&n);
for(int i=1;i<=n;i++){
cin>>ci[i];
for(int j=0;j<ci[i].size();j++)ci[i][j]=tolower(ci[i][j]);
}
getline(cin,s);
getline(cin,s);
for(int i=0;i<s.size();i++)s[i]=tolower(s[i]);
for(int i=0;i<s.size();i++)
{
if(s[i]==',')continue;
if(s[i]>='a'&&s[i]<='z')dan+=s[i];
if(s[i]==' '){
if(dan==" "){dan="";continue;}
int id=0;
for(int i=1;i<=n;i++)
if(ci[i]==dan){id=i;break;}
if(id==0){dan="";}
else{
flag[id]=1;
dan="";
}
}
if(s[i]=='.'){
int id=0;
for(int i=1;i<=n;i++)
if(ci[i]==dan){id=i;break;}
if(id==0){dan="";}
else{
flag[id]=1;
dan="";
}
for(int i=1;i<=n;i++)
if(flag[i])ans++;
memset(flag,0,sizeof flag);
}
}
printf("%d",ans);
return 0;
}