https://school.programmers.co.kr/learn/courses/30/lessons/42578
스파이들은 매일 다른 옷을 조합하여 입어 자신을 위장합니다.
예를 들어 스파이가 가진 옷이 아래와 같고 오늘 스파이가 동그란 안경, 긴 코트, 파란색 티셔츠를 입었다면 다음날은 청바지를 추가로 입거나 동그란 안경 대신 검정 선글라스를 착용하거나 해야 합니다.
스파이가 가진 의상들이 담긴 2차원 배열 clothes가 주어질 때 서로 다른 옷의 조합의 수를 return 하도록 solution 함수를 작성해주세요.
func solution(clothes [][]string) int {
var resultMap = map[string][]string{}
for _, cloth := range clothes {
c, ok := resultMap[cloth[1]]
if !ok {
resultMap[cloth[1]] = []string{cloth[0]}
continue
}
c = append(c, cloth[0])
resultMap[cloth[1]] = c
}
var result = 1
for _, v := range resultMap {
result *= len(v) + 1
}
return result - 1
}
[Programmers] Lv.2 괄호 회전하기 (Go) (0) | 2022.12.01 |
---|---|
[Programmers] Lv.1 명예의 전당 (1) (Go) (0) | 2022.11.30 |
[Programmers] Lv.2 행렬의 곱셈 (Go) (0) | 2022.11.28 |
[Programmers] Lv.3 베스트앨범 (Go) (0) | 2022.11.27 |
[Programmers] Lv.2 N개의 최소공배수 (Go) (0) | 2022.11.27 |
댓글 영역