내 맴

[ BAEKJOON ] No. 10733 제로 본문

Algorithm/Baekjoon 문제풀이

[ BAEKJOON ] No. 10733 제로

뺙사우르수 2020. 4. 2. 17:33
728x90

[ 문제 ]

https://www.acmicpc.net/problem/10773

 

10773번: 제로

문제 나코더 기장 재민이는 동아리 회식을 준비하기 위해서 장부를 관리하는 중이다. 재현이는 재민이를 도와서 돈을 관리하는 중인데, 애석하게도 항상 정신없는 재현이는 돈을 실수로 잘못 부르는 사고를 치기 일쑤였다. 재현이는 잘못된 수를 부를 때마다 0을 외쳐서, 가장 최근에 재민이가 쓴 수를 지우게 시킨다. 재민이는 이렇게 모든 수를 받아 적은 후 그 수의 합을 알고 싶어 한다. 재민이를 도와주자! 입력 첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤

www.acmicpc.net

 

[ 풀이 ] 

입력된 숫자가 0인 경우 가장 최근 값을 빼와야하기 때문에 stack을 사용하여 문제를 해결하였다. 

 

< checking Fuction > 


입력받은 숫자가  0 이면,  그 전에 입력값을 지워줘야 함으로 pop해준다
                                0 이 아닌경우, 숫자를 stack에 넣어준다. 

 

- python code 

def checking(stack, number):
    if number==0:
        stack.pop()
    else:
        stack.append(number)


k=int(input())
stack=[]
for i in range(k):
    num=int(input())
    checking(stack ,num)
print(sum(stack))
728x90