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

박형진·2022년 9월 7일
0

https://school.programmers.co.kr/learn/courses/30/lessons/84512


1. 코드

def solution(word):
    chars = ['A', 'E', 'I', 'O', 'U']
    idx = [-1]
    answer = [0]

    def dfs(path):
        if len(path) > 5:
            return

        idx[0] += 1
        if path == word:
            answer[0] = idx[0]

        for char in chars:
            dfs(path + char)

    dfs('')
    return answer[0]

2. 후기

기존 dfs문제들 에서는 파라미터로 dfs(path, idx) 구조를 사용했다면, 이 문제에서는 전역 변수의 역할을 수행하는 변수 idx[0]을 사용했기 때문에 path 파라미터만 가지면 된다.

전역변수인 idx[0]을 사용한 이유는 카운트 인덱스를 함수의 인자로 사용할 경우 값이 계속하여 증가할 수 없기 때문이다.

profile
안녕하세요!

0개의 댓글