这题是字符串+搜索
我们要看算高手和小萝莉能在一起的天数 题目中给我们的参数是字符串 所以我们就要搜索看小萝莉去的 地方和高手去的地方有哪些是重合的
所以我们可以用map来解决这个问题
map<string,bool>用第一个参数记录地方,第二个参数判断这个地方是否会去
题目中提到地名可能会有空格,所以我们遇到空格时需要继续输入,可以用getline判断是否为空格,如果为就继续输入并记录为一个地名 ,要实现这个步骤我们可以用string,string有一个特性,可以让字符串相加,我们可以让没有空格的地名成为新的地名
代码
#include<bits/stdc++.h>
using namespace std;
int n,m;
int ans;
map<string,bool>gaoshou;
string s1,s2;
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
{
cin>>s1;
while(getchar()==' ')
{
cin>>s2;
s1+=s2;
}
gaoshou[s1]=true;
}
for(int i=1;i<=m;i++)
{
cin>>s1;
while(getchar()==' ')
{
cin>>s2;
s1+=s2;
}
if(gaoshou[s1]==true)
{
ans++;
}
}
cout<<ans;
return 0;
}