๊ด€๋ฆฌ ๋ฉ”๋‰ด

Algo ์“ฐ์ž

[Programmers] ์ˆซ์ž ๋ฌธ์ž์—ด๊ณผ ์˜๋‹จ์–ด ๋ณธ๋ฌธ

๐Ÿ’ฏ CodingTest/Programmers

[Programmers] ์ˆซ์ž ๋ฌธ์ž์—ด๊ณผ ์˜๋‹จ์–ด

S.Honey 2022. 4. 9. 23:51
def solution(s):
    words = {'zero': '0', 'one':'1', 'two':'2', 'three':'3','four':'4', 'five':'5', 'six':'6', 'seven':'7','eight':'8','nine':'9'}

    temp = ''
    answer = ''
    for c in s:
        if c in words.values() :
            answer += c 
        else:
            temp += c

        if temp in words.keys() :
            answer += words[temp]
            temp = ''

    return int(answer)
  1. ์ดˆ๊ธฐ words ๋”•์…”๋„ˆ๋ฆฌ์— ์ˆซ์ž์˜ ์˜๋ฌธํ‘œ๊ธฐ๋ฅผ ํ‚ค๋กœํ•˜๊ณ  ์ˆซ์ž(๋ฌธ์ž์—ด)๋ฅผ ๊ฐ’์œผ๋กœ ๊ฐ€์ง€๋Š” ๋”•์…”๋„ˆ๋ฆฌ๋กœ ์ดˆ๊ธฐํ™”
  2. temp ๋ฌธ์ž์—ด๊ณผ answer ๋ฌธ์ž์—ด ์„ ์–ธ ๋ฐ ๊ฐ๊ฐ ๋นˆ ๋ฌธ์ž์—ด๋กœ ์ดˆ๊ธฐํ™”
  3. ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๋“ค์–ด์˜จ s (๋ฌธ์ž์—ด) ๋‚ด๋ถ€์— c (ํ•œ๊ธ€์ž)๋ฅผ ๊ฐ€์ ธ์™€ words.values() ์— ์žˆ๋Š” ์ˆซ์žํ˜•ํƒœ์˜ ๋ฌธ์ž๋“ค๊ณผ ๋น„๊ตํ•ด ์žˆ๋Š”์ง€ ์ฒดํฌ
  4. ๋งŒ์ผ ์žˆ๋‹ค๋ฉด ๋ฐ”๋กœ answer ๋ฌธ์ž์—ด์— ์ถ”๊ฐ€ํ•˜๊ณ  ์—†๋‹ค๋ฉด temp ๋ฌธ์ž์—ด์— ์ถ”๊ฐ€
  5. ์ดํ›„ words.keys()๋ฅผ ํ†ตํ•ด key๋“ค์„ ๊ฐ€์ ธ์™€ ํ•ด๋‹น key๋“ค ์ค‘ temp์— ๋ˆ„์ ๋œ ๋ฌธ์ž๊ฐ€ ์žˆ๋Š”์ง€ ๋น„๊ต
  6. ๋งŒ์ผ temp์— ๋ˆ„์ ๋œ ๋ฌธ์ž์™€ ๋™์ผํ•œ ๋ฌธ์ž๊ฐ€ ์žˆ๋‹ค๋ฉด answer์— words[temp]๋กœ ๊ฐ’์„ ๋ฌธ์ž์—ด์— ์ถ”๊ฐ€ํ•ด์ฃผ๊ณ , ์—†๋‹ค๋ฉด ๋ฐ˜๋ณต๋ฌธ์„ ๊ณ„์† ์ง„ํ–‰
  7. ๋ˆ„์ ๋œ answer๋ฌธ์ž์—ด์„ int ํ˜•์œผ๋กœ ํ˜•๋ณ€ํ™˜ ํ›„ ์ตœ์ข… ๊ฒฐ๊ณผ ๋ฐ˜ํ™˜