본문 바로가기
알고리즘/BOJ

[BOJ] 10773번 제로 / 사용언어 : 파이썬(python)

by 바른 호랑이 2021. 12. 16.
728x90
반응형

※ 문제링크

 

10773번: 제로

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

www.acmicpc.net

※ 기본문제

 

[BOJ] 10828번 스택 / 사용언어 : 파이썬(python)

※ 문제링크 : https://www.acmicpc.net/problem/15649 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서

data-is-power.tistory.com

※ 문제풀이

import sys
K = int(input())
answer_list = []
for _ in range(K):
    answer = int(input())
    if answer == 0:
        answer_list.pop()
    else:
        answer_list.append(answer)
sys.stdout.write(f'{sum(answer_list)}') # 출력시 시간최소화를 위해 sys사용

해당문제는 스택과 관련된 매우 간단한 문제였다. 10828번과 마찬가지로 파이썬은 append와 pop만으로 해결이 가능하였다. 빈 리스트를 하나 만들고 0이 아닌 숫자가 들어오면 append로 추가해주고, 0이 들어오면 가장 최근에 들어간 요소를 제거한 후 최종적으로 리스트의 합을 출력하는 형식으로 문제를 해결하였다.

 

P.S 개발자가 되기위해 공부중입니다. 잘못된 부분을 댓글로 남겨주시면 학습하는데 큰 도움이 될 거 같습니다.

728x90
반응형

댓글