https://school.programmers.co.kr/learn/courses/30/lessons/42578
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
import java.util.*;
class Solution {
public int solution(String[][] clothes) {
HashMap<String, Integer> map = new HashMap<>();
int answer = 1;
for(int i = 0; i < clothes.length; i++) {
map.put(clothes[i][1], map.getOrDefault(clothes[i][1], 0) + 1);
}
for(String key : map.keySet()) {
answer *= (map.get(key) + 1); // 안입는 경우 + 1
}
answer -= 1;
return answer;
}
}
/*
1. 의상 종류 별로 몇개씩 있는지 HashMap에 저장
2. map에 저장된 개수로 경우의 수 구함(각 부위를 안 입는 경우 포함)
3. 모두 안 입는 경우 빼고 경우의 수 반환
*/
'코딩테스트 > 코딩테스트 문제풀이' 카테고리의 다른 글
| [Java] 프로그래머스 <모의고사> (0) | 2025.02.28 |
|---|---|
| [Java] 프로그래머스 <최소직사각형> (0) | 2025.02.28 |
| [Java] 프로그래머스 <n^2 배열 자르기> (0) | 2025.02.22 |
| [Java] 프로그래머스 <이진 변환 반복하기> (0) | 2025.02.16 |
| [Java] 프로그래머스 <JadenCase 문자열 만들기> (0) | 2025.02.16 |