[ํ๋ก๊ทธ๋๋จธ์ค/python] ์ํด๋ฆฌ ์ฑ๋ฆฐ์ง 5์ฃผ์ฐจ : ๋ชจ์ ์ฌ์
๋ฌธ์ ์ค๋ช
์ฌ์ ์ ์ํ๋ฒณ ๋ชจ์ 'A', 'E', 'I', 'O', 'U'๋ง์ ์ฌ์ฉํ์ฌ ๋ง๋ค ์ ์๋, ๊ธธ์ด 5 ์ดํ์ ๋ชจ๋ ๋จ์ด๊ฐ ์๋ก๋์ด ์์ต๋๋ค. ์ฌ์ ์์ ์ฒซ ๋ฒ์งธ ๋จ์ด๋ "A"์ด๊ณ , ๊ทธ๋ค์์ "AA"์ด๋ฉฐ, ๋ง์ง๋ง ๋จ์ด๋ "UUUUU"์ ๋๋ค.
๋จ์ด ํ๋ word๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ด ๋จ์ด๊ฐ ์ฌ์ ์์ ๋ช ๋ฒ์งธ ๋จ์ด์ธ์ง return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ์ฌํญ
- word์ ๊ธธ์ด๋ 1 ์ด์ 5 ์ดํ์ ๋๋ค.
- word๋ ์ํ๋ฒณ ๋๋ฌธ์ 'A', 'E', 'I', 'O', 'U'๋ก๋ง ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
์ ๋ต
def solution(word):
n = {'A':0, 'E':1, 'I':2, 'O':3, 'U':4}
answer = len(word)
re = (((5 + 1)*5 + 1)*5 + 1)*5 + 1
for i in word:
answer += re * n[i]
re = (re - 1) // 5
return answer
re๋ ์ฒซ์งธ์๋ฆฌ ๋ฌธ์๊ฐ ๋ฐ๋ ๋๊น์ง์ ๊ฐ์๋ก
๋ฌธ์ 5๊ฐ ๋ฐ๋ณต ํ ์๋ฆฌ์๊ฐ ๋น์ด์๋ ๊ฒฝ์ฐ +1์ ํ๋ค.
์๋ฆฌ์๊ฐ ๋ฐ๋ ค๋ ์๋ก ๋ฐ๋ณต๋๋ ํ์๋ 1๋นผ๊ณ 5๋ก ๋๋ ์ ๋งํผ ์์์ง๋ฏ๋ก
re๋ฅผ ๋ค์ ์๋ฆฌ์๊ฐ ๋ฐ๋ณต๋๋ ํ์๋ก ๊ณ ์ณ์ค๋ค.
.
.
.
๊ทธ๋ฅ ์ผ๋จ ์์ ์ ๋ ธ๊ฐ๋ค๋ก ์ ์ด๋ณด๊ณ ๊ท์น์ ์ฐพ์ ์ธ์ด ์์ด๋ผ ๋ง๋ก ์ค๋ช ํ๋ ค๋ ์ด๋ ต๋ค ใ
์ด์ฐจํผ ํ๊ธ์์ฉ ๋ฌ๋ผ์ง๋ฉด์ ๊ณ์ ๋ฐ๋ณตํ๊ธฐ ๋๋ฌธ์ ์ง์ ์ ์ด๋ณด๋ฉฐ ๊ท์น์ ์ฐพ๋๊ฒ ์ค์ํ ๊ฒ ๊ฐ๋ค.
๋ค๋ฅธ ํ์ด์์๋ ๋ชจ๋ ๊ฐ๋ฅํ ๋ฌธ์์ด์ ์ ์ฅํ ํ ์ ๋ ฌํ์ฌ ์๋ฆฌ๋ฅผ ์ฐพ๋๋ฐ
๋ฌธ์๊ฐ ๋ช๊ฐ ์์ด์ ๊ฐ๋ฅํ๊ฐ๋ณด๋ค.