가영이의 스토리

[백준/Python] 백준 10773번 제로 본문

코딩연습장/백준

[백준/Python] 백준 10773번 제로

gayomii 2024. 1. 2. 14:08

🏆백준 10773번 - 제로

 

10773번: 제로

첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경

www.acmicpc.net


✍️문제


정답

n = int(input())
ans = []

for i in range(n):
    a = int(input())
    if a == 0:
        ans.pop()
    else:
        ans.append(a)
        
print(sum(ans))

💫 해설 및 한줄평

처음에 for문만 사용했다가 0이 연속으로 나올 때 오류가 발생해서 gpt4한테 물어봐서 stack구조를 사용했다.

 

ans라는 빈 리스트를 만든 후 각각 입력값들을 넣어준다.이때 입력값이 0이면 pop을 사용해 이전 입력값을 꺼내준다.이후 최종적으로 구해진 ans의 sum을 구해 print한다.

 

for문만 돌릴려니깐 막막했는데 역시 똑똑해야 고생을 덜하네 ㅎ ;;

지피티야 고마워~!

 

 

 

 

 

 

 

Comments