# 長さで分けて、その中で二重ループするか # しかしすべての長さが同じで、その中で二重ループしたらTLEするだろう N = int(input()) from collections import defaultdict dic_length = defaultdict(list) dic_name = defaultdict(int) S = [] for i in range(N): temp = input() dic_length[len(temp)].append(temp) dic_name[temp] = i def check_sokkuri(S1, S2): count = 0 for i in range(len(S1)): if S1[i] != S2[i]: count += 1 if count == 1: return 1 else: return 0 ans_list = [0]*N keys = [k for k in dic_length.keys()] for k in keys: l = len(dic_length[k]) for n1 in range(l): for n2 in range(n1+1, l): if check_sokkuri(dic_length[k][n1], dic_length[k][n2]) == 1: ans_list[dic_name[dic_length[k][n1]]] += 1 ans_list[dic_name[dic_length[k][n2]]] += 1 #print(ans_list) for a in ans_list: print(a)