#include<bits/stdc++.h>
using namespace std;
const int N=3e6+10;
int s[N][30];
int cnt[N];
int q,idx;
int getnum(char c){
return c-'a';
}
void insert(string temp){
int p=0;
int size=temp.size();
for(int i=0;i<size;i++){
int u=getnum(temp[i]);
if(!s[p][u]) s[p][u]=++idx;
p=s[p][u];
}
cnt[p]++;
return ;
}
int check(string temp){
int num=0;
int p=0;
int size=temp.size();
for(int i=0;i<size;i++){
int u=getnum(temp[i]);
p=s[p][u];
num+=cnt[p];
}
return num;
}
int main(){
string temp;
int n,m;
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>temp;
insert(temp);
}
for(int i=1;i<=m;i++){
cin>>temp;
cout<<check(temp)<<endl;
}
return 0;
}