반응형

안녕하세요 Jin's 입니다.

 

오늘의 코딩테스트 문제는 해시 중 위장에 대한 문제 풀이 입니다.

 

 

해당 문제는 의상 조합 개수를 구하는 문제였습니다.

옷 종류별 개수를 구하기 위해 map에 clothes  값을 넣었습니다.

 

예시로 공식을 설명드리자면,

headgear(yellow_hat, green_turban, 입지 않았을 경우(eyewear만 착용했을경우)) : 총 3가지수

eyewear(blue_sunglasses, 입지 않았을 경우(headgear만 착용했을경우))총 2가지수

 

따라서  headgear 개수 * eyewear 개수 - 1( 둘다 입지않은 경우의 수 ) 공식을 사용하여서 풀이하였습니다.

 

import java.util.HashMap;

class Solution {
    public int solution(String[][] clothes) {
        int answer = 1;
        HashMap<String, Integer> map = new HashMap<String, Integer>();
		
		for(int i=0; i< clothes.length;i++){
			map.put(clothes[i][1], map.getOrDefault(clothes[i][1], 0)+1);
		}

		for(String c : map.keySet()){
			answer*= map.get(c)+1;
		}
		
        return answer-1;
    }
}

 

 

여러분도 한번 풀어보세요~

 

반응형

+ Recent posts