@[LawrenceLoyaldog](/user/1042335)
```cpp
#include<bits/stdc++.h>
using namespace std;
#define ll long long
string arr[21];
string a;
int main()
{
ll n=0,m =0;
cin>>n>>m;
getchar();
for(ll i = 0;i<n;i++)
{
getline(cin,arr[i]);
}
ll sum =0;
for(ll j=0;j<m;j++)
{
getline(cin,a);
for(ll i = 0;i<n;i++)
{
if(a==arr[i])
{
sum++;
break;
}
}
}
cout<<sum;
return 0;
}
```
我ac的代码是这样的,,我跑了一下你的代码,思路上感觉没什么奇怪的,可能是地名什么的出现了空格什么的,建议用getline
你的代码给你修改一下就ac了
```cpp
#include <bits/stdc++.h>
using namespace std;
int n,m,cnt=0;
string s1[21],s2[1000001];
int main(){
cin >> n >> m;
//这里
getchar();
//和这里
for(int i=0;i<n;i++)getline(cin,s1[i]);
for(int i=0;i<m;i++)getline(cin,s2[i]);
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
if(s1[i]==s2[j])
{
cnt++;
}
}
}
cout << cnt;
return 0;
}
```
希望可以帮到你
by sll00 @ 2024-03-02 11:18:27
@[sll00](/user/1243869) 谢谢大佬!!!已关
by LawrenceLoyaldog @ 2024-03-02 18:28:58