ํด๋น๋ฌธ์ ๋งํฌ : https://programmers.co.kr/learn/courses/30/lessons/81301
๋ชฉ์ฐจ
- 1. ๋ฌธ์ ์ค๋ช
- 2. ์ ํ์ฌํญ
- 3. ํ์ด์ฌ ํ์ด
- 4. ํ์ด์ฌ ํ์ด ์ค๋ช
- 5. ์ํ์ฐฉ์ค
- 6. ๋๋์

1. ๋ฌธ์ ์ค๋ช
๋ค์ค์ ํ๋ก๋๊ฐ ์ซ์๋์ด ๊ฒ์์ ํ๊ณ ์์ต๋๋ค. ์ซ์์ ์ผ๋ถ ์ซ์์ด์ง๋ง ๋ฌธ์์ด์ด ๊ฐ์ด ์กด์ฌํ๋ ๋ฌธ์์ด์ ๊ฑด๋ค์ฃผ๋ ๋ชจ๋ ์ซ์๋ก ๋ณํ์์ผ์ผ ํ๋ ๊ฒ์์ ๋๋ค. ์๋ฅผ ๋ค์ด, '23four5six7" ์ด๋ผ๋ ๊ฐ์ด ์ฃผ์ด์ง๋ฉด, 234567 ์ด๋ผ๋ ๋ชจ๋ ์ซ์๋ก ๋ ๊ฐ์ ๋ฐํํด์ค์ผํฉ๋๋ค.
2. ์ ํ์ฌํญ
- 1 โค s์ ๊ธธ์ด โค 50
- s๊ฐ "zero" ๋๋ "0"์ผ๋ก ์์ํ๋ ๊ฒฝ์ฐ๋ ์ฃผ์ด์ง์ง ์์ต๋๋ค.
- return ๊ฐ์ด 1 ์ด์ 2,000,000,000 ์ดํ์ ์ ์๊ฐ ๋๋ ์ฌ๋ฐ๋ฅธ ์ ๋ ฅ๋ง s๋ก ์ฃผ์ด์ง๋๋ค.
- ์ ํ์ฑ ํ ์คํธ 10์ด
- ์)
s | result |
"one4seveneight" | 1478 |
"23four5six7" | 234567 |
"2three45sixseven" | 234567 |
"123" | 123 |
3. ํ์ด์ฌ ํ์ด
2๊ฐ์ง๋ก ํ์์ต๋๋ค. ์ฒซ๋ฒ์งธ ํ์ด๋ ์๊ฐ ์ ํ์ผ๋ก ๊ฐ์ ๋ ํ์ด๋ฐฉ๋ฒ 2๋ก ์ ์ถํ์์ต๋๋ค.
ํ์ด1
def solution(s):
answer = 0
if "one" in s:
s = s.replace("one","1")
if "two" in s:
s = s.replace("two","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")
answer = int(s)
return answer
ํ์ด 1 ํ์ด์ฌ ํ์ด ๊ฒฐ๊ณผ
ํ
์คํธ 1 ใ ํต๊ณผ (0.01ms, 10.4MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 3 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 6 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 7 ใ ์คํจ (๋ฐํ์ ์๋ฌ)
ํ
์คํธ 8 ใ ์คํจ (๋ฐํ์ ์๋ฌ)
ํ
์คํธ 9 ใ ์คํจ (๋ฐํ์ ์๋ฌ)
ํ
์คํธ 10 ใ ํต๊ณผ (0.02ms, 10.5MB)
ํ์ด 1 ์ฑ์ ๊ฒฐ๊ณผ
์ ํ์ฑ: 70.0
ํฉ๊ณ: 70.0 / 100.0
ํ์ด 2
def solution(s):
answer = s
dictionary = {
"zero" : "0",
"one" : "1",
"two" : "2",
"three" : "3",
"four" : "4",
"five" : "5",
"six" : "6",
"seven" : "7",
"eight" : "8",
"nine" : "9"
}
for item in dictionary.items():
answer = answer.replace(item[0], item[1])
return int(answer)
ํ์ด 2 ํ์ด์ฌ ํ์ด ๊ฒฐ๊ณผ
ํ
์คํธ 1 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 2 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 3 ใ ํต๊ณผ (0.03ms, 10.4MB)
ํ
์คํธ 4 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 5 ใ ํต๊ณผ (0.02ms, 10.3MB)
ํ
์คํธ 6 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 7 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 8 ใ ํต๊ณผ (0.03ms, 10.4MB)
ํ
์คํธ 9 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ
์คํธ 10 ใ ํต๊ณผ (0.02ms, 10.4MB)
ํ์ด 2 ์ฑ์ ๊ฒฐ๊ณผ
์ ํ์ฑ: 100.0
ํฉ๊ณ: 100.0 / 100.0
4. ํ์ด์ฌ ํ์ด ์ค๋ช
์ผ์ผํ ์ฝ๋๋ฅผ ์ํํ๋ ๊ฒ๋ณด๋ค ํ๋ฒ์ ์ํํ๋ ๊ฒ์ ๋ชฉํ๋กํ๊ณ , ๋ฐ๋ณต๋ฌธ์ ์ ํ์ฉํด์ ์๊ฐ์ ๋จ์ถํ๋ ๊ฒ์ด ์ค์ํ๋ค๋ ๊ฒ์ ๊นจ๋ฌ์์ต๋๋ค.
replace ๋ฉ์๋์ key, value ๊ฐ์ ๋ํด์ items() ๋ฅผํ๋ฉด ์ฒซ๋ฒ์งธ๋ key, ๋๋ฒ์งธ๋ ํด๋น key์ ๋ํ value ๊ฐ์ด ๋์ต๋๋ค.
5. ์ํ์ฐฉ์ค
return re.sub('\.\.+','.',x)
0์ ๊ณ ๋ คํ์ง ์๊ณ , ๊ณ์ ์ฝ๋๋ฅผ ์์ ํ๋๋ฐ, ๋ฐํ์ ์๋ฌ๊ฐ ๋๋ ์ด์ ๊ฐ zero ์ ๋ํ ๋์ ๋๋ฆฌ๋ฅผ ๋ง๋ค์ด์ฃผ์ง ์์์์ ๊นจ๋ซ๊ณ , ๋ค์ ์คํํ์๋๋ ์ฑ๊ณตํ์์ต๋๋ค.
6. ๋๋์
๋์ ๋๋ฆฌ ํํ์, replace ๊ตฌ๋ฌธ์ ๋ํ ํ์ต์ ํ์์ต๋๋ค.