📊알고리즘, 문제풀이/📈문제풀이 (PS)

[알고리즘][Python] 백준 9375 패션왕 신해빈 문제 풀이

Written by Donghak Park

문제 출처 : www.acmicpc.net/problem/9375

 

9375번: 패션왕 신해빈

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

www.acmicpc.net


문제 해석 : 해빈이는 매일 다른 옷을 입고 싶어한다. 따라서 가지고 있는 옷에 따른 경우의 수를 구해보자. 단 한가지 카테고리에서 2개 이상의 물건을 착용할 수 는 없다.

 

문제 풀이 :  딕셔너리를 이용해서 각 카테코리별 아이템을 저장한다. 여기에는 착용하지 않았음을 나타내는 " " 도 포함한다. 그 후 가능한 모든 경우는 각 카테코리를 모두 곱한 것에서 아무것도 착용하지 않는 경우를 제외한 것이다.


풀이 코드

T = int(input())

for test_case in range(T):
    N = int(input())
    cloth = {}

    for _ in range(N):
        name, what = input().split()

        if what in cloth.keys():
            cloth[what].append(name)
        else:
            cloth[what] = [name,""]
    answer = 1
    for key in cloth.keys():
        answer *= len(cloth[key])

    print(answer - 1 )

author : donghak park
contact : donghark03@naver.com

## 문제의 저작권은 백준 알고리즘 사이트에 있습니다. 혹시 문제가 되는 부분이 있으면 연락 바랍니다.