코딩_Python(Level.0)

[Level.0] 숨어있는 숫자의 덧셈(2)

Hong's_Computer 2026. 3. 17. 15:42
반응형

문제 설명: 문자열 my_string이 매개변수로 주어집니다. my_string은 소문자, 대문자, 자연수로만 구성되어있습니다. my_string안의 자연수들의 합을 return하도록 solution 함수를 완성해주세요.

제한사항

  • 1 ≤ my_string의 길이 ≤ 1,000
  • 1 ≤ my_string 안의 자연수 ≤ 1000
  • 연속된 수는 하나의 숫자로 간주합니다.
  • 000123과 같이 0이 선행하는 경우는 없습니다.
  • 문자열에 자연수가 없는 경우 0을 return 해주세요.

문제 해결

def solution(my_string):
    temp = ''
    answer = 0
    for my in my_string:
        if my.isdigit():
            temp += my
        else:
            if temp:
                answer += int(temp)
                temp = ''
    if temp:
        answer += int(temp)
    return answer

def solution(my_string):
    temp = ''.join(my if my.isdigit() else ' ' for my in my_string)
    return sum(int(num) for num in temp.split())

 

주석: 숫자가 아닌 문자를 모두 공백(' ')으로 치환한 뒤 split()을 수행하면 연속된 숫자 뭉치만 리스트로 추출되므로 이를 정수로 변환하여 합산한다.

반응형

'코딩_Python(Level.0)' 카테고리의 다른 글

[Level.0] 진료순서 정하기  (0) 2026.03.18
[Level.0] 2의 영역  (0) 2026.03.18
[Level.0] 세 개의 구분자  (0) 2026.03.17
[Level.0] 문자열 묶기  (0) 2026.03.17
[Level.0] k의 개수  (0) 2026.03.17