본문 바로가기
Algorithm

[구현/수학] 백준 9375 패션왕 신해빈 - Python

by jangThang 2022. 2. 4.
반응형

백준 온라인 저지

 

[ Contents ]

     

     

    1. 문제 (링크 참조)

     

    9375번: 패션왕 신해빈

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

    www.acmicpc.net

     

     

     

    2. 문제 풀이

     가지고 있는 옷과 옷의 종류를 입력받고, 가능한 의상의 조합 수를 계산하는 문제입니다.

     

    2022.01.19 - [Algorithm] - [Algorithm] 단골 1번 문제, 구현 / 수학

     

    [Algorithm] 단골 1번 문제, 구현 / 수학

    [ Contents ] 1. 구현  단순히 '구현'만 하면 되는 문제 유형입니다. 문제를 이해하고 입력에 맞춰 적절한 출력만 하면 됩니다. 특별한 알고리즘이나 프로그래밍적 기법 없이, 단순 제어문만 사용하

    star7sss.tistory.com

     같은 이름을 가진 의상은 존재하지 않는다고 명시되어 있습니다. 의상의 이름은 고려할 필요가 없으며, 종류별로 몇 가지 의상을 가졌는지가 중요합니다.

     

     

    3. 코드

    T = int(input())
    for i in range(T):
        N = int(input())
        clothes = dict()
        for i in range(N):
            items, kinds = input().split()
            # 이미 있는 종류일 경우
            if kinds in clothes:
                clothes[kinds] += 1
            # 새로운 종류 추가
            else:
                clothes[kinds] = 1
    
        res = 1 # 결과값
        for i in clothes:
            res *= clothes[i]+1
        print(res-1)

     딕셔너리(dictionary) 자료형을 사용하여 종류별로 의상 수를 입력받습니다. 이미 있는 종류일 경우에는 의상 수를 +1하고, 없는 종류일 경우 추가합니다.

     경우의 수는 종류별로 (가진 옷의 수 + 1[안 입음])를 곱한 다음에, 1을 빼줍니다. 여기서 1은 알몸 상태로, 모든 종류의 옷을 안 입었을 경우입니다.

     

     

    star가 되고나서 Tistory

    반응형

    댓글