programmers.co.kr/learn/courses/30/lessons/42578
하 이 문제는 조합으로 푸는 문제라고 생각해서 해시까지는 구현해주었는데,,, 경우의 수를 이제 어떻게 구해주지?에서 막혔었다.....ㅠㅜ
- 옷의 종류가 a와 b가 있고 각각 2벌씩 있다면, 스파이가 입을 수 있는 옷의 경우의 수는 2 x 2 = 4가지
- 그러나, 스파이는 1개의 옷만 입는 경우가 있으므로, +1을 해주어 3x3 = 9가지
- 이 경우에는 아무것도 걸치지 않는 경우가 포함되어있으므로 -1을 해준다.
def solution(clothes):
a = {}
for i in range(len(clothes)):
if clothes[i][1] in a:
a[clothes[i][1]] += 1
else:
a[clothes[i][1]] = 1
count = 1
for i in a.values():
count *= i+1
return count-1
반응형