상상쓰

[프로그래머스] 5주차_모음사전 본문

Coding Test

[프로그래머스] 5주차_모음사전

상상쓰 2021. 8. 30. 16:18

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

 

코딩테스트 연습 - 5주차

사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니

programmers.co.kr

 

어렵지 않은 경우의 수로 문제를 해결했다.

A 에서 E 까지 과정은 다음과 같다.

 

A = 5^0가지

A? = 5^1가지

A?? = 5^2 가지

A??? = 5^3 가지

A???? = 5^4 가지

E = 5^0 + 5^1 + 5^2 + 5^3 + 5^4 + 1 = (5^5) / 4 (등비수열의 합 공식) + 1

 

규칙을 찾아 반복문을 통하여 답을 찾아준다.

 

def solution(word):
    answer = 0
    nth = {'A' : 0, 'E' : 1, 'I' : 2, 'O' : 3, 'U': 4}
    
    for i in range(len(word)):
        answer += (5 ** (5 - i) // 4 * nth[word[i]] + 1)  
        
    return answer

print(solution('AAAAE')) # 6
Comments