#include <stdio.h>
int n,m;
int search(char [1000][20],char []);
int alpha(char *,char *);
int main()
{
scanf("%d",&n);
int i;
char a[1000][20],b[1000][20];
for(i=0;i<n;i++)
scanf("%s",a[i]);
scanf("%d",&m);
for(i=0;i<m;i++)
scanf("%s",b[i]);
for(i=0;i<m;i++)
printf("%d\n",search(a,b[i]));
return 0;
}
#include <string.h>
int search(char str[1000][20],char s[])
{
int i,count=0;
for(i=0;i<n;i++)
{
if (strcmp(str[i], s) == 0)
continue;
else
if (alpha(str[i],s)==1)
count++;
}
return count;
}
int alpha(char *p,char *q)
{
int num1[26]={0};
int num2[26]={0};
int i,j,k=0;
for(i=0;*(p+i)!='\0';i++)
{
j=0;
while (j<26)
{
if(p[i]==('a'+j))
{
num1[j]++;
break;
}
j++;
}
}
for(i=0;*(q+i)!='\0';i++)
{
j=0;
while (j<26)
{
if(q[i]==('a'+j))
{
num2[j]++;
break;
}
j++;
}
}
for(i=0;i<26;i++)
if(num1[i]==num2[i])
k++;
if(k==26)
return 1;
else
return 0;
}