Python으로 구현한 84512번 모음 사전 문제 풀이입니다.
https://programmers.co.kr/learn/courses/30/lessons/84512
from itertools import product
def solution(word) :
target = ['A', 'E', 'I', 'O', 'U']
arr = []
for i in range(1, 6) :
arr += list(map("".join, product(target, repeat=i)))
arr.sort()
for i in range(len(arr)) :
if arr[i] == word :
return i + 1
1. 알파벳 'A', 'E', 'I', 'O', 'U' 를 담은 target 리스트를 정의하고, 사전을 만들기 위해 arr 리스트를 정의한다.
2. 1부터 6까지를 반복문의 범위로 설정하여 itertools.product() 모듈을 통해 중복 순열을 수행하여 arr 리스트에 추가한다.
3. 이후 arr리스트를 오름차순으로 정렬하고 값을 하나씩 확인하여 해당 문자열이 word와 같을 경우 해당 인덱스 번호를 반환한다.
'프로그래머스(Python) 풀이 > Level.2' 카테고리의 다른 글
프로그래머스(Python) 77885번 2개 이하로 다른 비트 풀이 (0) | 2022.05.11 |
---|---|
프로그래머스(Python) 86971번 전력망을 둘로 나누기 풀이 (0) | 2022.05.11 |
프로그래머스(Python) 68936번 쿼드압축 후 개수 세기 풀이 (0) | 2022.05.11 |
프로그래머스(Python) 70129번 이진 변환 반복하기 풀이 (0) | 2022.05.11 |
프로그래머스(Python) 92335번 k진수에서 소수 개수 구하기 풀이 (0) | 2022.05.10 |