[Python] 프로그래머스 - Weekly Challenge 5주차
https://programmers.co.kr/learn/courses/30/lessons/84512?language=python3
# 모음이 5개 밖에 없고 길이도 5가 최대이므로 A부터 UUUUU까지 모든 단어를 만든뒤
dic에 넣고 찾고자 하는 단어의 index를 반환하는 식으로 짰다.
1. 처음에 11번째줄에서 반복문을 돌며 add_word('A'), add_word('E') ... add_word('U')를 실행한다.
2. add_word함수: 문자열 s를 넘겨받아 s의 길이가 6이 되면 return해준다.
dic에 s를 append해주고 ('A', 'E', 'I', 'O', 'U')를 반복문을 돌며 현재 s에
다음 문자를 더해주고 add_word(s + i)를 실행해준다.
# 처음에 add_word('A')가 실행되고 add_word('AA') -> add_word('AAA') ... add_word('AAAAA')까지
간 다음 add_word('AAAAAA')에서 길이가 6이므로 return되고 add_word('AAAAE')가 실행되서
결국 사전순으로 dic에 모든 단어가 들어가게 된다.
따라서 마지막에 dic.index(word) + 1로 원하는 위치를 찾아낼 수 있다.
def solution(word):
dic = []
def add_word(s):
if len(s) == 6:
return
dic.append(s)
for i in ('A', 'E', 'I', 'O', 'U'):
add_word(s + i)
for i in ('A', 'E', 'I', 'O', 'U'):
add_word(i)
return dic.index(word) + 1
'문제풀이 > Programmers' 카테고리의 다른 글
[Python] 프로그래머스 - Weekly Challenge 6주차 (0) | 2021.09.06 |
---|---|
[Python] 프로그래머스 - 메뉴 리뉴얼 (0) | 2021.09.03 |
[Python] 프로그래머스 - 합승 택시 요금 (0) | 2021.08.30 |
[Python] 프로그래머스 - Weekly Challenge 4주차 (0) | 2021.08.28 |
[Python] 프로그래머스 - 괄호 변환 (1) | 2021.08.27 |