Programmers

Programmers LV.2 위장

Developer Garam.Choi 2020. 12. 17. 21:06

 

처음에는 옷 종류 / 갯수를 별도의 Map 넣어서 처리하도록 계산하려고 하였으나 아무것도 안입엇을 경우, 각 종류별로 안입엇을 경우에 대한 경우의 수가 필요해서 아래와 같이 작업함

 

 

 @org.junit.Test
         public void test(){
            String[][] clothes = {{"yellow_hat", "headgear"},{"blue_sunglasses","eyewear"},{"green_turban", "headgear"}};

            Map<String,Integer> clotheType = new HashMap<String, Integer>();

            int answer = 1;

            for(String[] clothe : clothes){
                clotheType.put(clothe[1] , clotheType.getOrDefault(clothe[1],0) +1);
            }

            for(String key : clotheType.keySet()){
                answer *= clotheType.get(key) +1;
            }

            System.out.println(answer - 1);

        }