from sys import stdin input = stdin.readline from collections import defaultdict def code(s): return ord(s)-ord("a") def codeR(n): return chr(ord("a")+n) N = int(input()) S = [list(input().rstrip("\n")) for _ in range(N)] for i in range(N): L = len(S[i]) C = [[0]*26 for _ in range(L+1)] for j in reversed(range(L)): for k in range(26): C[j][k] = C[j+1][k] C[j][code(S[i][j])] += 1 for j in range(L-1): if 1 <= code(S[i][j]) and 1 <= sum(C[j+1][:code(S[i][j])]): for k in reversed(range(j+1, L)): if S[i][k] < S[i][j]: S[i][j], S[i][k] = S[i][k], S[i][j] break break else: if len(set(S[i])) == L: S[i][-1], S[i][-2] = S[i][-2], S[i][-1] MIN = "~" D = defaultdict(int) S = ["".join(s) for s in S] for s in S: MIN = min(MIN, s) D[s] += 1 for s in S: if MIN == s: print(N+1-D[s]) else: print(0)