https://www.acmicpc.net/problem/9375
입력받은 옷을 종류별로 나눠서 카운트 한다. 카운트 한 값에 각각 1을 더해서 곱한뒤 1을 나눈다. 경우의 수 를 구하는 것이다.
1씩 더하는 이유는 입지 않는 것도 선택하기 위해서 이고, 1을 빼는 이유는 아무것도 안 입었을 경우를 빼기 위해서 이다.
headgear : 2개, eyewear : 1개이면 경우의 수는 5개 이다. headgear만 입을 경우 2개 + eyewear만 입을 경우 1개 + headgear랑 eyewear 입을경우 2개 합해서 5개이다.
계산을 해보면 (2+1) * (1+1) - 1 = 5 이다.
from sys import stdin
input = stdin.readline
t = int(input()) #테스트케이스 입력
for _ in range(t):
n = int(input())
dic = dict()
for i in range(n):
c, ty = input().split()
if ty in dic: #입력받은 옷의 종류가 있는 종류라면 +1을 한다.
dic[ty] += 1
else: #입력받은 옷의 종류가 없는 종류라면 2로 저장한다. (옷의 개수 1 + 선택안할경우 1)
dic[ty] = 2
sum =1
for j in dic:
sum *= dic[j]
print(sum-1)