알고리즘

[프로그래머스, 파이썬] 모음 사전

hminor 2024. 2. 29. 12:00
반응형

풀이

  • 재귀와 백트래킹을 활용한 풀이로
  • return이 존재하면 입력으로 주어지는 word와 같은 단어이기에
  • 멈추고 아닐 경우 다시 이전의 해당 idx의 값을 빈 문자로 변경 하여 해결

 

cnt = 0

def solution(word):
    li = ['']*5
   
    def find(idx):
        global cnt  
        if "".join(li) == word: return cnt
        elif idx == 5: return
        else:
            for i in ['A','E','I','O','U']:
                cnt += 1
                li[idx] = i
                if find(idx+1): return cnt
                li[idx] = ''
    return find(0)