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

 

28278번: 스택 2

첫째 줄에 명령의 수 N이 주어진다. (1 ≤ N ≤ 1,000,000) 둘째 줄부터 N개 줄에 명령이 하나씩 주어진다. 출력을 요구하는 명령은 하나 이상 주어진다.

www.acmicpc.net

문제

풀이

간단한 스택 구현 문제입니다. 조건문에 신경써서 문제를 풀어주세요.

 

코드

# 28278번 스택 2
import sys
st = []

t = int(input())
for _ in range(t):
    order = sys.stdin.readline().rstrip().split()
    if len(order) == 2:
        st.append(order[1])
    else:
        if order[0] == "2":
            if st:
                print(st.pop())
            else:
                print(-1)
        elif order[0] == "3":
            print(len(st))
        elif order[0] == "4":
            if st:
                print(0)
            else:
                print(1)
        else:
            if st:
                print(st[-1])
            else:
                print(-1)

 

 

출력결과

개발자 성현