본문 바로가기

프로그래밍/백준

백준 9375 패션왕 신해빈 - 파이썬

문제.

 

풀이.

우선 입력은 딕셔너리를 사용해서 입력을 받았다.

의상 종류가 A, B, C가 있을때

(A의 갯수 + 1) * (B의 갯수 + 1) * (C의 갯수 + 1) - 1

을 출력하면 된다.

 

소스코드.

import sys

tc = int(sys.stdin.readline())

for i in range(tc):
    n = int(sys.stdin.readline())
    dict = {}
    for j in range(n):
        c1, c2 = sys.stdin.readline().split()
        if c2 not in dict:
            dict[c2] = 1
        elif c2 in dict:
            dict[c2] += 1
    result = 1
    for d in dict.values():
        result *= d+1
    print(result-1)