#include <bits/stdc++.h>
using namespace std;
int cnt = 1, n, k;
struct trie
{
int son[80];
bool end;
}a[100005];
void insert(string s)
{
int p = 1;
for(int i = 0; i < s.size(); i++)
{
int ch = s[i] - 47;
if(a[p].son[ch] == 0)
a[p].son[ch] = ++cnt;
p = a[p].son[ch];
}
a[p].end = true;
}
int query(string s)
{
int p = 1, ans = 0;
for(int i = 0; i < s.size(); i++)
{
int ch = s[i] - 47;
if(a[a[p].son[ch]].end)ans++;
if(a[p].son[ch] == 0)return ans;
p = a[p].son[ch];
}
return ans;
}
int main()
{
cin >> n >> k;
for(int i = 1; i <= n; i++)
{
string s;
cin >> s;
insert(s);
}
for(int i = 1; i <= k; i++)
{
string s;
cin >> s;
cout << query(s) << "\n";
}
return 0;
}