코딩연습장/백준
[백준/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문만 돌릴려니깐 막막했는데 역시 똑똑해야 고생을 덜하네 ㅎ ;;
지피티야 고마워~!