본문 바로가기

알고리즘/프로그래머스

[프로그래머스 코딩테스트 고득점 Kit / 완전탐색] 모음사전 (python)

728x90

풀이

def solution(word):
    vowel = "AEIOU"
    global answer
    global flag
    answer = 0
    flag = True
    
    def perm(arr, n):
        global answer
        global flag

        if n > 0:
            curWord = "".join(arr)
            if word == curWord:
                flag = False
                return
            if n == 5:
                return
        
        for i in range(len(vowel)):
            if flag:
                answer += 1
                arr.append(vowel[i])
                perm(arr, n+1)
                arr.pop()
            else:
                return
            
    perm([], 0)
            
    return answer

내 풀이

  • 재귀함수로 문제해결
  • flag 변수를 만들어서 답이 나오면 들어와있는 함수를 모두 return 해주는 방식으로 함

# 테스트 케이스

word result
"AAAAE" 6
"AAAE" 10
"I" 1563
"EIO" 1189

 

반응형