본문 바로가기

코딩테스트 연습/programmers

[프로그래머스] 해시 - 위장

 

이전에 c++ 로 풀어봤던 문제였는데, java로 다시 풀어봤다.

 

import java.util.*;
import java.io.*;

class Solution {
    public int solution(String[][] clothes) {
        int answer = 1;
        
        HashMap<String, Integer> map = new HashMap<>();
        
        for(String[] s: clothes){
            map.put(s[1], map.getOrDefault(s[1], 0) + 1);
        }
        
        
        Iterator<Map.Entry<String, Integer>> iter = map.entrySet().iterator();
        
        
        while(iter.hasNext()){
            Map.Entry<String, Integer> next = iter.next();
            
            answer = answer * (next.getValue() + 1);
            
        }
        
        answer--;
        
        
        
        return answer;
    }
}