# push X: 정수 X를 스택에 넣는 연산이다.
# pop: 스택에서 가장 위에 있는 정수를 빼고, 그 수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다.
# size: 스택에 들어있는 정수의 개수를 출력한다.
# empty: 스택이 비어있으면 1, 아니면 0을 출력한다.
# top: 스택의 가장 위에 있는 정수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다.
# sys.stdin.readline(): 입출력속도가 빠르다.
import sys
arr=[]
N = int(input())
for i in range(N):
a = sys.stdin.readline().split()
if(a[0]=="push"):
arr.append(a[1])
elif(a[0]=="pop"):
if(len(arr)>0):
print(arr[-1])
arr.pop()
else: print("-1")
elif(a[0]=="size"):
print(len(arr))
elif(a[0]=="empty"):
if(len(arr)==0):
print("1")
else: print("0")
elif(a[0]=="top"):
if(len(arr)>0):
print(arr[-1])
else: print("-1")
솔직하게 말하자면 이번 문제는 입력에서 자꾸 오류가 나서...
입력만 다른사람들은 어떻게 했는지 살짝 코드를 엿보고 풀었다.
그 외 push,pop,size,empty,top은 내가 구현해주었다.
별로 어려운건 없었다.
입력받을때 sys.stdin.readline()이라는 것이 있다는 것을 알게되었다. 앞으로 잘 쓸 것 같다.
그리고 나는 def 함수로 하나하나 구현해보려했는데 그냥 for문 안에 구현해도 상관없었다...