문제
코드
My answer
import sys
input=sys.stdin.readline
t=int(input())
for i in range(t):
n=int(input())
cloth=dict()
tmp=1
for j in range(n):
a,b=input().split()
if(b in cloth):
cloth[b]+=1
else:
cloth[b]=1
for k in cloth:
tmp*=(cloth[k]+1)
print(tmp-1)
Another answer
for _ in range(int(input())):
a=[input().split()[1] for i in range(int(input()))]
b=set(a)
s=1
for i in b:s*=(a.count(i)+1)
print(s-1)
풀이
경우의 수 문제이다. 우선 상의3벌, 하의3벌,신발3켤레가 있다고 하면 식은 4*4*4-1이 되는데 이유는 우선 각종류별 가짓수에다가 안입는경우도 있기 때문에 모두 1을 더해서 곱해주고 전부 안입었을 경우(알몸일경우) 1을 빼주면 답이된다.
728x90
반응형
'코딩테스트 > 백준[Python]' 카테고리의 다른 글
[Python] 백준 #15724 - 주지수[try_again]-ing (0) | 2022.03.02 |
---|---|
[Python] 백준 #18115 - 카드 놓기[try_again] (0) | 2022.03.02 |
[Python] 백준 #1302 - 베스트셀러 (0) | 2022.03.01 |
[Python] 백준 #11729 - 최대 힙 (0) | 2022.02.28 |
[Python] 백준 #5397- 키로거 (0) | 2022.01.25 |