해당 문제는 의상의 종류와 의상 이름이 주어졌을 때 이를 조합해 입을 수 있는 가지 수를 결정하는 문제다.
즉, 각 종류에 몇개가 주어졌는지를 카운트하고 입지 않은 것을 포함해 총 딕셔너리의 의상 리스트 길이+1을 모두 곱한 뒤 1을 빼주었다. 이때 1을 빼준 것은 아무것도 입지 않은 경우를 빼준 것이다.
testcase = int(input())
for _ in range(testcase):
n = int(input())
dic = {}
for i in range(n):
name, kind = input().split()
if kind in dic.keys():
dic[kind].append(name)
else:
dic[kind] = []
dic[kind].append(name)
ans = 1
for i in dic.keys():
ans *= (len(dic[i])+1)
print(ans-1)