# ์ซ์ ๋ฌธ์์ด๊ณผ ์๋จ์ด # 81301 # lv1 # Python
# ๋ฌธ์
๋ค์ค์ ํ๋ก๋๊ฐ ์ซ์๋์ด๋ฅผ ํ๊ณ ์์ต๋๋ค. ๋ค์ค๊ฐ ํ๋ก๋์๊ฒ ์ซ์๋ฅผ ๊ฑด๋ฌ ๋ ์ผ๋ถ ์๋ฆฟ์๋ฅผ ์๋จ์ด๋ก ๋ฐ๊พผ ์นด๋๋ฅผ ๊ฑด๋ค์ฃผ๋ฉด ํ๋ก๋๋ ์๋ ์ซ์๋ฅผ ์ฐพ๋ ๊ฒ์์
๋๋ค.
๋ค์์ ์ซ์์ ์ผ๋ถ ์๋ฆฟ์๋ฅผ ์๋จ์ด๋ก ๋ฐ๊พธ๋ ์์์
๋๋ค.
- 1478 → "one4seveneight"
- 234567 → "23four5six7"
- 10203 → "1zerotwozero3"
์ด๋ ๊ฒ ์ซ์์ ์ผ๋ถ ์๋ฆฟ์๊ฐ ์๋จ์ด๋ก ๋ฐ๋์ด์ก๊ฑฐ๋, ํน์ ๋ฐ๋์ง ์๊ณ ๊ทธ๋๋ก์ธ ๋ฌธ์์ด s๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง๋๋ค. s๊ฐ ์๋ฏธํ๋ ์๋ ์ซ์๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ฐธ๊ณ ๋ก ๊ฐ ์ซ์์ ๋์๋๋ ์๋จ์ด๋ ๋ค์ ํ์ ๊ฐ์ต๋๋ค.
์ซ์ | ์๋จ์ด |
0 | zero |
1 | one |
2 | two |
3 | three |
4 | four |
5 | five |
6 | six |
7 | seven |
8 | eight |
9 | nine |
# ์ ํ์ฌํญ
- 1 ≤ s์ ๊ธธ์ด ≤ 50
- s๊ฐ "zero" ๋๋ "0"์ผ๋ก ์์ํ๋ ๊ฒฝ์ฐ๋ ์ฃผ์ด์ง์ง ์์ต๋๋ค.
- return ๊ฐ์ด 1 ์ด์ 2,000,000,000 ์ดํ์ ์ ์๊ฐ ๋๋ ์ฌ๋ฐ๋ฅธ ์ ๋ ฅ๋ง s๋ก ์ฃผ์ด์ง๋๋ค.
# ํ์ด
def solution(s):
# ์๋ฌธ์ผ๋ก ๋ฐ์ ์ซ์๋ฅผ ์๋ผ๋น์ ์ซ์๋ก ๋ฐ๊ฟ์ ๋ฆฌํดํ๋ ํจ์
# one -> 1, two -> 2, ..
dic1 = {'zero' : '0', 'one' : '1', 'two' : '2', 'three' : '3', 'four': '4',
'five': '5', 'six': '6', 'seven': '7', 'eight':'8', 'nine': '9'}
# ์ซ์๋ฅผ ์ค์ฌ์ผ๋ก ๋ฌธ์์ด์ split. ํด๋น ์์๋ค์ด dic1(key)์ ์๋์ง ํ์ธ.
# ์๋ค๋ฉด ํด๋น key์ value ๊ฐ์ผ๋ก ๋ณํ.
for key, value in dic1.items():
s = s.replace(key, value)
return int(s)
"""
# dictionary๋ฅผ ํ์ฉํ์ง ์๊ณ ๋ฌธ์ ๋ฅผ ํผ๋ค๋ฉด?
# ๋ฐ์์ฒ๋ผ ์ผ์ผ์ด ํด๋น ์ซ์๋ฌธ์์ด์ด ๋์ฌ ๋๋ง๋ค s ๋ฌธ์์ด์ replace ํด์ค์ผ ํจ.
# ๋
ผ๋ฆฌ์ ๊ตฌํ์ ๊ฐ๋ฅํ๋, ๋ฐํ์ ์๋ฌ๊ฐ ๋ฐ์ํ ์ ์์.
if 'zero' in s:
s = s.replace('zero', '0')
if 'one' in s:
s = s.replace('one', '1')
if 'two' in s:
s = s.replace('zero', '2')
if 'three' in s:
s = s.replace('three', '3')
if 'four' in s:
s = s.replace('four', '4')
if 'five' in s:
s = s.replace('five', '5')
if 'six' in s:
s = s.replace('six', '6')
if 'seven' in s:
s = s.replace('seven', '7')
if 'eight' in s:
s = s.replace('eight', '8')
if 'nine' in s:
s = s.replace('nine', '9')
return int(s)
"""