본문 바로가기
전공공부/코딩테스트

프로그래머스 위장

by 시아나 2021. 3. 28.

스파이의 위장 - 얼굴, 상의, 하의, 컽옷의 케이스가 있고 각 케이스 별로 0 or 1개의 요소를 선택해야한다.

같은 선택지는 반복되면 안된다.

 

이건 각 부위별 의상의 개수만 알면 간단하게 될 것 같습니다.

 

각 부위별로 나올 수 있는 케이스는

아무것도 선택되지 않을 경우와 해당 부위에 해당하는 의류 중 하나가 선택될 경우이가 있으므로

 

각 부위별 의상의 개수에 선택되지 않을 경우의 수 1을 추가로 더합니다.

그리고 모든 경우의 수는 각 부위별 의상의 개수 +1을 모두 곱한 수에서 1을 뺀 겻이 됩니다.

 

이때 1을 뺀 이유는 모두 선택되지 않은 경우는 없기 때문입니다.

 

코드는 아래와 같습니다.