programmers.co.kr/learn/courses/30/lessons/42578
import java.util.HashMap;
class Solution {
public int solution(String[][] clothes) {
HashMap<String, Integer> hashmap=new HashMap<>();
for(int i=0;i<clothes.length;i++) {
if(hashmap.containsKey(clothes[i][1])) hashmap.replace(clothes[i][1], hashmap.get(clothes[i][1])+1);
else hashmap.put(clothes[i][1], 1);
}
int answer=1;
for(int n:hashmap.values()) {
answer*=(n+1);
}
return answer-1;
}
}
이 문제는 HashMap을 이용해서 풀어보았습니다.
HashMap은 Key(키)와 Value(값)으로 이루어져있는데요, 이 문제에서는 Key가 의상의 종류, Value는 의상의 종류별 개수를 저장합니다.
전체 경우의 수는 의상의 종류별 개수들의 곱으로 이루어지므로 answer에 이를 계산해서 저장해줍니다.
'프로그래밍 문제 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 기능개발(JAVA) (0) | 2020.09.17 |
---|---|
[프로그래머스] 주식가격(JAVA) (0) | 2020.09.17 |
[프로그래머스] 베스트앨범(JAVA) (0) | 2020.09.10 |
[프로그래머스] 전화번호 목록(JAVA) (0) | 2020.09.03 |
[프로그래머스] 완주하지 못한 선수(JAVA) (0) | 2020.09.01 |