import sys def get_coffee(number): numbers = [] # only one strain for ind in range(len(number)): numbers.append(number[:ind] + "?" + number[ind + 1:]) # two strains for first in range(len(number)): for second in range(first + 1, len(number)): if first != second: tmp = number[:first] + "?" + number[first + 1:] numbers.append(tmp[:second] + "?" + tmp[second + 1:]) return numbers def get_juice(number): numbers = [] for start in range(len(number)): for end in range(start + 1, len(number) + 1): numbers.append(number[:start] + "*" * (end - start) + number[end:]) return numbers if __name__ == '__main__': old = dict() N = int(sys.stdin.readline().strip("\n")) for i in range(N): number = sys.stdin.readline().strip("\n") for combination in [number, *get_coffee(number), *get_juice(number)]: previous = old[combination] if combination in old else 0 old[combination] = previous + 1 Q = int(sys.stdin.readline().strip("\n")) for i in range(Q): number = sys.stdin.readline().strip("\n") number = number.replace("*", (9-len(number)+1) * "*") print(old[number] if number in old else 0)