본문 바로가기

코딩테스트/programmers

의상

https://school.programmers.co.kr/learn/courses/30/lessons/42578

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

부위별로 1개 또는 0개를 선택하는 경우의 수를 계산하면 된다.

 

카테고리별로 카운팅 해주고, 카테고리별 개수를 모두 곱해준다.

 

모두 벗는 케이스는 제외해줘야 하기 때문에, 마지막에 1을 빼줌.

 

import java.util.*; 

class Solution {
    public int solution(String[][] clothes) {
        
        Map<String, Integer> count = new HashMap();
        
        for (String[] c : clothes) {
            int cnt = count.getOrDefault(c[1], 0);
            count.put(c[1], ++cnt);
        }
        
        int answer = 1;
        for (int c : count.values()) {
            answer *= c+1;
        }
        
        return answer - 1;
    }
}

'코딩테스트 > programmers' 카테고리의 다른 글

기능개발  (1) 2023.10.12
튜플  (0) 2023.10.10
캐시  (0) 2023.10.06
행렬의 곱셈  (0) 2023.10.06
H-Index  (0) 2023.10.06