유럽 여행 출발 전✈️

김태준·2022년 12월 29일
0

Travel

목록 보기
1/8

집을 나오기 전 준태 모습.. 3주 동안 못본다 이제 짜식아 형 다녀올게~

4년만에 떠나는 해외라서 엄청 기대 중이다~

공항에 도착하고 입국 수속이 워낙 빨라져서 2시간이나 대기중..

모음 사전

def solution(word):
    answer = 0
    alphabet = ['A', 'E', 'I', 'O', 'U']
    alpha_idx = [5**i for i in range(len(alphabet))]
    for i in range(len(word)-1, -1, -1):
        idx = alphabet.index(word[i])
        for j in range(5-i):
            answer += idx * alpha_idx[j]
        answer += 1
    return answer

< 풀이 과정 >

  • 알파벳 모음 A, E, I, O, U를 리스트 형태로 저장해놓기
  • 각 인덱스 별로 5의 제곱수 또한 리스트로 지정해놓기
    ex ) word 문자열이 EIO인 경우
    E : (5^4+5^3+5^2+5) * 1 번째 + 2(A다음이 E이므로)
    I : (5^3+5^2+5)
    * 2 번째 + 3 (A,E 다음 I이므로)
    0 : (5^2+5)
    * 3번째 + 4 (A,E,I 다음 O이므로)

위와 같은 케이스로 볼 때, 주어진 word길이를 역순으로 for문 돌리고 WORD의 인덱스와 WORD 문자열 길이에서 해당 인덱스 제외한 나머지들의 5의 제곱수를 각각 곱해주고 최종적으로 더해주면 되는 문제

  • 이때 for문을 돌고 마지막으로 answer += 1을 해주는 이유는 리스트의 인덱스는 0부터 시작하므로 AAAAE와 같이 앞서 지정한 alphabet리스트의 0번째 인덱스인 A의 경우 답이 계속 0이 나오기 때문에 WORD문자열 길이만큼 for문을 돌 때 answer + 1을 해주어야만 한다.
profile
To be a DataScientist

2개의 댓글

comment-user-thumbnail
2022년 12월 29일

그리운 나의 친구 태준아. 그 곳에서는 부디 마음의 짐 다 내려놓고 행복하게 지내기를 바란다.. 네가 떠나기 전 미처 고맙다, 사랑한다 따뜻한 말 한 마디 전하지 못한 게 가슴 한 켠을 아리게 하는구나.. 훗날 언젠가 다시 마주할 그 날을 기약하며..

1개의 답글