해시맵에 친숙해지자.
import java.util.HashMap;
class Solution {
public int solution(String[][] clothes) {
int answer = 1;
HashMap<String, Integer> HM = new HashMap<>();
for(int i = 0; i < clothes.length; i++) {
HM.put(clothes[i][1], HM.getOrDefault(clothes[i][1], 0) + 1);
}
for(String key : HM.keySet()) {
answer *= HM.get(key) +1;
}
return answer - 1;
}
}
for(int i = 0; i < clothes.length; i++) {
HM.put(clothes[i][1], HM.getOrDefault(clothes[i][1], 0) + 1);
}
해당 종류 value에 +1
종류가 중복될 경우 원래 있던 value에 +1
int answer = 1;
for(String key : HM.keySet()) {
answer *= HM.get(key) +1;
}
return answer - 1;
곱해야하기 때문에 answer 초기값 1로 설정
종류별 value 값에 +1 을 하여 곱을 구함
초기값이었던 1을 빼주고 answer 리턴