본문 바로가기

Algorithm/Implementation

(Python3) - 프로그래머스(코딩테스트 입문) : 숨어있는 숫자의 덧셈 (2)

반응형

https://school.programmers.co.kr/learn/courses/30/lessons/120864

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

문자열을 다뤄본 문제였습니다.

📕 풀이방법

📔 입력 및 초기화

정답변수 answer와 만들어진 숫자를 저장할 tmp를 선언 후 각각 0으로 초기화합니다.

📔 풀이과정

my_string의 원소를 순회하며 다음을 진행합니다.1.  현 원소가 숫자라면 tmp에 10을 곱한뒤 해당 원소를 정수로 바꿔 tmp를 갱신해줍니다.

 

2. 아닌 경우에는 여태까지 만들어진 tmp값을 answer에 더하고 tmp를 0으로 초기화합니다.

📔 정답 출력 | 반환

answer에 마지막에 만들어진 tmp값을 더해 반환합니다.


📕 Code

📔 Python3

def solution(my_string):
    answer = 0
    tmp = 0
    for char in my_string:
        if char.isdigit():
            tmp = 10 * tmp + int(char)
        else:
            answer += tmp
            tmp = 0
    return answer + tmp

*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.