코테 노트/프로그래머스

Level 2 모음사전 Python 3

화요밍 2022. 3. 11. 15:12
728x90
반응형

https://programmers.co.kr/learn/courses/30/lessons/84512?language=python3 

 

코딩테스트 연습 - 모음사전

사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니

programmers.co.kr

 

최종 코드

 

GitHub - hwayeon351/Programmers-Algorithms: 프로그래머스 알고리즘 소스 코드 모음

프로그래머스 알고리즘 소스 코드 모음. Contribute to hwayeon351/Programmers-Algorithms development by creating an account on GitHub.

github.com

from itertools import product
def solution(word):
    dic = []
    for i in product(['', 'A', 'E', 'I', 'O','U'], repeat=5):
        str_i = "".join(list(i))
        dic.append(str_i)

    dic = sorted(list(set(dic)))
    return dic.index(word)

풀이 과정

풀이 시간 22분

from itertools import product
def solution(word):
	#모음 사전에 속하는 모든 글자 구하기
    dic = []
    for i in product(['', 'A', 'E', 'I', 'O', 'U'], repeat=5):
        str_i = "".join(list(i))
        dic.append(str_i)
     
	#중복된 글자를 제거하고, 사전 순으로 정렬하기
    dic = sorted(list(set(dic)))
    
    #word가 몇 번째에 속하는지 return
    return dic.index(word)
    
#시간복잡도 = O(6^5) = O(1), 공간복잡도 = O(1)

 

728x90
반응형