반응형
https://school.programmers.co.kr/learn/courses/30/lessons/120894
문자열을 다뤄본 문제였습니다.
📕 풀이방법
📔 입력 및 초기화
1. 정답 변수 answer 선언 후 0으로 초기화합니다.
2. 문자열마자 나타내는 숫자를 각각 key와 value로 저장할 hash map변수 num_dict를 선언해 적절히 초기화합니다.
3. 매칭되는 문자를 찾을때마다 flush해줄 지역변수 str 선언 후 빈 문자열로 초기화합니다.
📔 풀이과정
numbers의 원소를 순회하며 다음을 진행합니다.
1. str에 문자를 붙여줍니다.
2. str이 num_dict의 key와 일치하다면 answer에 value를 더해주고 answer는 10곱해주며 str을 flush해줍니다.
📔 정답 출력 | 반환
10이 한번더 곱해졌으므로 answer 를 10으로 정수 나누기한 값을 반환합니다.
📕 Code
📔 Python3
def solution(numbers):
answer = 0
num_dict = {
"zero": 0,
"one": 1,
"two": 2,
"three": 3,
"four": 4,
"five": 5,
"six": 6,
"seven": 7,
"eight": 8,
"nine": 9
}
str = ""
for char in numbers:
str += char
if num_dict.get(str) is not None:
answer += num_dict[str]
answer *= 10
str = ""
return answer // 10
*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.
'Algorithm > String' 카테고리의 다른 글
(Python3) - 프로그래머스(코딩테스트 입문) : OX퀴즈 (0) | 2024.10.31 |
---|---|
(Python3) - 프로그래머스(코딩테스트 입문) : 문자열 정렬하기 (2) (0) | 2024.10.31 |
(Python3) - 프로그래머스(코딩 기초 트레이닝) : 세 개의 구분자 (0) | 2024.10.19 |
(Python3) - 프로그래머스(코딩 기초 트레이닝) : rny_string (0) | 2024.10.19 |
(Python3) - 프로그래머스(코딩 기초 트레이닝) : 부분 문자열인지 확인하기 (0) | 2024.10.18 |