[Python] 프로그래머스 / 모음 사전 / DFS

2024. 7. 22. 15:07Coding Test/Python

코딩테스트 연습 - 모음사전 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

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

programmers.co.kr

 

알고리즘 고득점 kit에서 '완전탐색'으로 분류되어 있지만 dfs로 간단히(?) 풀 수 있습니다.

 

def solution(word):
    answer = 1
    moeum = "AEIOU"
    alpha = "A"
    def dfs(alpha, i):
        if alpha==word:
            return 
            
        for i in range(0, len(moeum)):
            dfs(alpha+moeum[i], 1+i)
            answer += i
        
    dfs(alpha, 1)
    return answer

 

틀린 내 코드

 

def solution(word):
    moeum = "AEIOU"
    word_list = []
    def dfs(length, alpha):
        
        # 종료시점
        if length==5:
            return 
            
        for i in range(len(moeum)):
            word_list.append(alpha+moeum[i])
            dfs(length+1, alpha+moeum[i])
        
    dfs(0, "")
    return word_list.index(word)+1

 

 

ref :

[프로그래머스/Python] 모음사전 (velog.io)