풀이 과정
- 재귀함수를 사용하여 구현하면 쉽게 구현할 수 있다.
- 재귀함수를 통해 전체 사전을 구성
- 구성한 사전들 중 입력받은 단어가 몇번째에 있는지 검사
- 재귀함수의 하나의 함수 내에서 하는 역할은 다음과 같다.
- 현재의 단어를 사전에 저장
- A, E, I, O, U 각각을 붙여서 다음 재귀함수 호출
- 단어의 길이가 6을 넘어가면 종료
소스 코드
dictionary = []
def recursion(p, step):
if step == 6:
return
if p != '':
dictionary.append(p)
for c in ['A', 'E', 'I', 'O', 'U']:
recursion(p+c, step+1)
def solution(word):
answer = 0
recursion('', 0)
for i in range(len(dictionary)):
if dictionary[i] == word:
answer = i+1
break
return answer
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges
'알고리즘[Python] > 프로그래머스' 카테고리의 다른 글
[ 위클리 챌린지 ] [ 3주차 ] 퍼즐 조각 채우기 (0) | 2021.09.10 |
---|---|
[ 위클리 챌린지 ] [ 6주차 ] 복서 정렬하기 (0) | 2021.09.08 |
[ 위클리 챌린지 ] [ 4주차 ] 직업군 추천하기 (0) | 2021.08.24 |
[ 위클리 챌린지 ] [ 2주차 ] 상호 평가 (0) | 2021.08.19 |
[ Lv 1 ] [ String ] 숫자 문자열과 영단어 (0) | 2021.08.19 |