#include<bits/stdc++.h>
using namespace std;
const int N=1010,M=15;
char str[N][M];
int f[N][N];
int editor(char a[],char b[]){
int la=strlen(a+1),lb=strlen(b+1);
for(int i=0;i<=lb;i++)f[0][i]=i;
for(int i=0;i<=la;i++)f[i][0]=i;
for(int i=1;i<=la;i++){
for(int j=1;j<=lb;j++){
f[i][j]=min(f[i-1][j]+1,f[i][j-1]+1);
if(a[i]==b[j])f[i][j]=min(f[i][j],f[i-1][j-1]);
else f[i][j]=min(f[i][j],f[i-1][j-1]+1);
}
}
return f[la][lb];
}
int main(){
int n,m;
scanf("%d %d",&n,&m);
for(int i=1;i<=n;i++)scanf("%s",str[i]+1);
while(m--){
char ss[15];
int limit;
int res=0;
scanf("%s%d",ss+1,&limit);
for(int i=1;i<=n;i++){
if(editor(str[i],ss)<=limit)res++;
}
printf("%d\n",res);
}
return 0;
}