코딩테스트

10/29 코딩테스트 프로그래머스 위장

박준희 2021. 10. 29. 19:37

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

 

코딩테스트 연습 - 위장

 

programmers.co.kr

 

import collections
import math

def solution(clothes):
    tmp = []
    for x in clothes:
        tmp.append(x[1])
    counter = collections.Counter(tmp)
    val = list(dict(counter).values())
    answer = 1
    for x in val:
        answer *= x + 1
    
    return answer - 1

 

같은 종류의 옷 개수 + 1를 하여 각 옷 종류의 개수를 곱하는 것이 포인트

같은 종류의 옷 개수 + 1를 하는 것은 입지 않는 상태를 추가 하기 위함

정답에 -1은 최소한 한개의 의상을 입기 때문에 전부 입지않는 케이스를 빼기 위함

 

 

참고

질문하기

 

https://caution-dev.tistory.com/5

 

[알고리즘][Swift] #3. 위장

안녕하세요! caution 입니다. '-' 알고리즘 문제 풀이 세 번째 시간입니다. 이번 문제는 이제까지 풀었던 문제중 가장 짧은 시간내에 풀었어요! 풀면서 고등학교 수학 시간이 떠올랐어요. 그때 외웠

caution-dev.tistory.com