본문 바로가기
알고리즘/자료구조

[백준][Python] 9375번 패션왕 신해빈

by 임짠짠 2022. 2. 24.
반응형
 

9375번: 패션왕 신해빈

첫 번째 테스트 케이스는 headgear에 해당하는 의상이 hat, turban이며 eyewear에 해당하는 의상이 sunglasses이므로   (hat), (turban), (sunglasses), (hat,sunglasses), (turban,sunglasses)로 총 5가지 이다.

www.acmicpc.net

 

코드

import sys
n = int(input())
for _ in range(n):
    dic = dict()
    m = int(input())
    for _ in range(m):
        name = sys.stdin.readline().split()
        if name[1] in dic:
            dic[name[1]] += 1
        else:
            dic[name[1]] = 1
    ans = 1 
    for val in dic.values():
        ans *= (val+1)
    print(ans-1)

 

설명

((a종류+1) * (b종류+1) * (c종류+1) * ... ) - 1로 계산해줬다.

1씩 더해준 이유는 해당 의상을 입어도 되고 안입어도 되기 때문이고 마지막에 1을 빼준 이유는 아무것도 입지 않은 경우는 제외해야 하기 때문이다. 중복은 없기 때문에 의상의 이름은 중요하지 않고 각각의 종류가 몇개씩 있는지만 알면 된다. 따라서 딕셔너리를 사용하여 개수를 알아냈다. 

반응형

댓글