단어에 숫자가 숨어있다. 이 숫자를 히든 넘버라고 한다. 알파벳 대/소문자와 숫자로 이루어진 단어가 주어졌을 때, 모든 히든 넘버의 합을 구하는 프로그램을 작성하시오.
단어와 히든 넘버는 아래와 같은 성질을 갖는다.
연속된 숫자는 한 히든 넘버이다.
두 히든 넘버 사이에는 글자가 적어도 한 개 있다.
히든 넘버는 6자리를 넘지 않는다.
입력
첫째 줄에 단어의 길이 n (1 ≤ n ≤ 5,000,000)이 주어진다. 둘째 줄에는 단어가 주어진다. 단어는 알파벳 대/소문자와 숫자(0-9)로 이루어져 있다.
입력으로 주어진 단어에 숨어있는 모든 히든 넘버의 합을 출력한다. 만약, 히든 넘버가 없는 경우에는 0을 출력한다.
14
ab13c9d07jeden
29
단어에 숫자가 숨어있는데 이 숫자를 문제에서는 히든 넘버라고 정의하고 있다.
이 히든넘버는 아래와 같은 성질을 가진다.
이 히든 넘버를 구하기 위해서는 기본적으로 단어를 처음부터 끝까지 탐색해야 한다.
이떄 문자열에 숫자면 숫자를 그대로 저장하고 문자면 공백을 저장한다.
새로 저장된 문자열에 split() 함수를 적용하여 공백을 뺸 히든 넘버들을 각각 구해서 그합을 출력한다.
n = int(input())
word = list(input())
d = '0123456789'
hiddenNum = ''
for w in word:
# 숫자면 저장하고
if w in d:
hiddenNum += w
# 문자면 공백저장
else:
hiddenNum += ' '
# 공백을 뺀 각 히든 넘버들의 합을 출력
print(sum(list(map(int, hiddenNum.split()))))