# 5622 : ๋ค์ด์ผ
์๊ทผ์ด์ ํ ๋จธ๋๋ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์ค๋๋ ๋ค์ด์ผ ์ ํ๊ธฐ๋ฅผ ์ฌ์ฉํ๋ค.
์ ํ๋ฅผ ๊ฑธ๊ณ ์ถ์ ๋ฒํธ๊ฐ ์๋ค๋ฉด, ์ซ์๋ฅผ ํ๋๋ฅผ ๋๋ฅธ ๋ค์์ ๊ธ์ ํ์ด ์๋ ๊ณณ ๊น์ง ์๊ณ๋ฐฉํฅ์ผ๋ก ๋๋ ค์ผ ํ๋ค. ์ซ์๋ฅผ ํ๋ ๋๋ฅด๋ฉด ๋ค์ด์ผ์ด ์ฒ์ ์์น๋ก ๋์๊ฐ๊ณ , ๋ค์ ์ซ์๋ฅผ ๋๋ฅด๋ ค๋ฉด ๋ค์ด์ผ์ ์ฒ์ ์์น์์ ๋ค์ ๋๋ ค์ผ ํ๋ค.
์ซ์ 1์ ๊ฑธ๋ ค๋ฉด ์ด 2์ด๊ฐ ํ์ํ๋ค. 1๋ณด๋ค ํฐ ์๋ฅผ ๊ฑฐ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ์ด๋ณด๋ค ๋ ๊ฑธ๋ฆฌ๋ฉฐ, ํ ์นธ ์์ ์๋ ์ซ์๋ฅผ ๊ฑธ๊ธฐ ์ํด์ 1์ด์ฉ ๋ ๊ฑธ๋ฆฐ๋ค.
์๊ทผ์ด์ ํ ๋จธ๋๋ ์ ํ ๋ฒํธ๋ฅผ ๊ฐ ์ซ์์ ํด๋นํ๋ ๋ฌธ์๋ก ์ธ์ด๋ค. ์ฆ, ์ด๋ค ๋จ์ด๋ฅผ ๊ฑธ ๋, ๊ฐ ์ํ๋ฒณ์ ํด๋นํ๋ ์ซ์๋ฅผ ๊ฑธ๋ฉด ๋๋ค. ์๋ฅผ ๋ค์ด, UNUCIC๋ 868242์ ๊ฐ๋ค.
ํ ๋จธ๋๊ฐ ์ธ์ด ๋จ์ด๊ฐ ์ฃผ์ด์ก์ ๋, ์ด ์ ํ๋ฅผ ๊ฑธ๊ธฐ ์ํด์ ํ์ํ ์ต์ ์๊ฐ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
๋ฌธ์ ๋ณด๊ธฐ
๐งช How to approach
- ์
๋ ฅ๋ str ํ์
์ ๋จ์ด๋ฅผ text ๋ณ์๋ก ์ ์ธํ๊ณ , ๋ค์ด์ผ ์ ํ๊ธฐ์ ๊ฐ ๋ฒํธ์ ํด๋นํ๋ ์ํ๋ฒณ ๋๋ฌธ์๋ค์ ๋ฆฌ์คํธ(di)๋ฅผ ์์ฑํ๋ค.
- ์ต์ข
์ถ๋ ฅ๋ ๊ฐ์ output ๋ณ์๋ก ์ ์ธํ๊ณ 0์ผ๋ก ์ ์ํ๋ค.
- ์ด์ค for๋ฌธ์ ํตํด text์ ๋ฌธ์์ด(i)์ด di ๋ฆฌ์คํธ์ ๋ฌธ์์ด(j)์ ํฌํจ ๋์๋์ง ์กฐํํ๋ค.
- if๋ฌธ์ด ์ฐธ์ด๋ผ๋ฉด, j์ ์ธ๋ฑ์ค ์์น*1 (ํด๋น ์ซ์์ ํด๋นํ๋ ๋ฆฌ์คํธ ์ธ๋ฑ์ค ๊ฐ * ์ซ์๋ฅผ ๊ฑธ๊ธฐ์ํด ์์๋๋ 1์ด) + 3 ('1'๋ก ์ด๋์ ์ํ 2์ด + '1->2' ์ด๋ ์ ์์๋๋ 1์ด)์ ๊ฐ์ output์ ๋ํด์ค๋ค.
- ๋์ ๋ output์ ๊ฐ์ ์ถ๋ ฅํ๋ค.
๐ต๏ธโ๏ธ Solving problem
# 5622 : ๋ค์ด์ผ
text = list(input())
di = ["ABC", "DEF", "GHI", "JKL", "MNO", "PQRS", "TUV", "WXYZ"]
output = 0
for i in text :
for j in di :
if i in j :
output += di.index(j)*1+3
print(output)
๐ป Learning Points
- ํ์ด์ฌ์ ์ธ๋ฑ์ค(index)๋ 0๋ถํฐ ์์ํ๋ ๊ฒ์ ์ฃผ์ํ์ฌ ๊ณ์ฐํด์ผ ํ๋ฉฐ, ์ฒซ๋ฒ์งธ ์ธ๋ฑ์ค(์ ํ๊ธฐ ์ซ์ : 2 ("ABC")) ๋ถํฐ์ ์์์ ์ํด์๋ ์ฒซ๋ฒ์งธ ์ธ๋ฑ์ค๋ ๋ฐ๋์ 3์ด๊ฐ ์์๋๋ค.
- ๋๋ฒ์งธ ์ธ๋ฑ์ค(์ ํ๊ธฐ ์ซ์ : 3 ("DEF"))์ ๊ฒฝ์ฐ์๋ ์ธ๋ฑ์ค์ ๊ฐ์ด 1์ด๋ฏ๋ก 1*1+3 = 4๊ฐ ๋๋ค.
- ์ฌ๊ธฐ์ ์ด๋์ ์ํด ์์๋๋ 1์ด์ ๊ณฑํด์ง๋ ๊ฐ์ ๊ฒฝ์ฐ์๋ ๊ฑธ๊ณ ์ ํ๋ ์ซ์ N์์ ์์์ 2๋ฅผ ๋นผ์ฃผ๋ฉด ์ ์ ์์ผ๋ฉฐ, ๋ ๋์๊ฐ ์ด๋ N์ด ๊ฐ๋ ์ํ๋ฒณ ๋ญ์น์ ์ธ๋ฑ์ค ๊ฐ๊ณผ ๋์ผํ๋ค.