728x90
반응형
1. 문제
https://school.programmers.co.kr/learn/courses/30/lessons/120853
숫자와 "Z"가 공백으로 구분되어 담긴 문자열이 주어집니다. 문자열에 있는 숫자를 차례대로 더하려고 합니다. 이 때 "Z"가 나오면 바로 전에 더했던 숫자를 뺀다는 뜻입니다. 숫자와 "Z"로 이루어진 문자열 s가 주어질 때, 머쓱이가 구한 값을 return 하도록 solution 함수를 완성해보세요.
2. 제한사항
3. Python code
def solution(s):
stack = []
for num in s.split(' '):
try:
stack.append(int(num))
except:
stack.pop()
return sum(stack)
각 숫자와 Z는 공백으로 구분 된다 했으므로 split을 사용해 나눠준다.
try except를 사용해 num이 숫자일 경우 stack에 append해주고
숫자가 아닌 Z일 경우 바로 pop을 이용해 바로 전에 append해준 숫자를 stack에서 뺀다.
728x90
반응형