개발자일걸요..?

9375번 패션왕 신해빈 본문

알고리즘코딩/Baekjoon Online Judge

9375번 패션왕 신해빈

Re_A 2021. 2. 16. 14:27
728x90
반응형

문제링크 : www.acmicpc.net/problem/9375

 

9375번: 패션왕 신해빈

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

www.acmicpc.net

 

<문제 풀이 방법>

ex )   예제                                              종류별로 구분

        3                                                  headgear   2

        hat headgear                                  eyewear    1

        sunglassess eyewear                      

        turban headgear 

 

종류별로 고려한 경우 : 2C1+2C2

종류 + 종류별 개수 고려한 경우 : 2C1*2+2C1*1+2C2*(2*1) = 2*2+2*1+2*+2 = 5

 

 => headgeaer -> headgear1, headgear2, no headgear

      eyewear -> eyewear1, no eyewear

      로 종류 구분을 하고 서로 짝지어 본후, no headgear와 no eyewear 끼리 짝지어진 경우를 뺀다.

 

 

 

<알고리즘>

  1) 입력받은 물건들을 종류별로 카운팅

  2) 종류별 갯수+1을 모두 곱한후 -1

import sys
from collections import Counter
T = int(sys.stdin.readline())
for _ in range(T):
    N = int(sys.stdin.readline())
    item = []
    for i in range(N):
        name, kind = sys.stdin.readline().split()
        item.append(kind)
    sortItem = Counter(item)
    result =1
    for i in sortItem:
        result*=(sortItem[i]+1)
    print(result-1)

 

+) Counter 함수 사용 : www.daleseo.com/python-collections-counter/

 

[파이썬] collections 모듈의 Counter 클래스 사용법

Engineering Blog by Dale Seo

www.daleseo.com

 

 

 

 

반응형

'알고리즘코딩 > Baekjoon Online Judge' 카테고리의 다른 글

11399번 ATM  (0) 2021.02.20
11047번 동전0  (0) 2021.02.19
1010번 다리놓기  (0) 2021.02.16
2004번 조합 0의 개수  (0) 2021.02.15
1676번 팩토리얼 0의 개수  (0) 2021.02.15
Comments