본문 바로가기
Algorithm/etc

[파이썬] 프로그래머스 : 모음사전 (Lv.2)

by 베짱이28호 2023. 11. 30.

[파이썬] 프로그래머스 : 모음사전 (Lv.2)

 

프로그래머스

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

programmers.co.kr


풀이

0.방향성 생각

  • 생긴게 딱 재귀처럼 생겼음
  • 재귀 바깥에 nonlocal로 카운트 세는 answer 변수 지정하고 풀이, 현재 상태 나타내는 string 리스트도 저장
  • 최대 깊이 도달했는데 못찾으면 False, 찾았으면 True로

1. DFS 풀이

def solution(word):
    arr,string = ['A','E','I','O','U'],[]
    answer = 0
    
    def dfs():
        nonlocal answer,string
        
        if ''.join(string) == word:
            return True
        
        if len(string) == 5:
            return False
        
        for a in arr:
            string.append(a)
            answer += 1
            if dfs(): return True
            string.pop()
    dfs()
    return answer

 

코멘트

.

댓글