만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

스택

면접 대비

시간 제한0.5초메모리 제한256 MB

요약
정수 스택에 push, pop, size, empty, top 명령을 순서대로 처리하고 결과를 출력합니다.
난이도

쉬움10점 중 3점

유형
스택
정답자
아직 제출이 없습니다

문제

정수를 저장하는 스택을 구현하고, 입력으로 주어지는 명령을 순서대로 처리하는 프로그램을 작성하시오.

명령은 다섯 가지다.

  • push X: 정수 XX를 스택에 넣는다.
  • pop: 스택의 맨 위에 있는 정수를 빼고 그 수를 출력한다. 스택이 비어 있으면 −1-1을 출력한다.
  • size: 스택에 들어 있는 정수의 개수를 출력한다.
  • empty: 스택이 비어 있으면 11, 아니면 00을 출력한다.
  • top: 스택의 맨 위에 있는 정수를 출력한다. 스택이 비어 있으면 −1-1을 출력한다.

입력

첫째 줄에 명령의 수 NN (1≤N≤100001 \le N \le 10000)이 주어진다. 둘째 줄부터 NN개의 줄에 명령이 한 줄에 하나씩 주어진다. push 명령의 정수 XX는 1≤X≤1000001 \le X \le 100000을 만족한다. 위에 나열하지 않은 명령은 주어지지 않는다.

출력

출력이 필요한 명령마다 결과를 한 줄에 하나씩, 명령이 주어진 순서대로 출력한다.

예제6

  1. 예제 1

    입력
    14
    push 1
    push 2
    top
    size
    empty
    pop
    pop
    pop
    size
    empty
    pop
    push 3
    empty
    top
    
    예상 출력
    2
    2
    0
    2
    1
    -1
    0
    1
    -1
    0
    3
    
  2. 예제 2

    입력
    7
    pop
    top
    push 123
    top
    pop
    top
    pop
    
    예상 출력
    -1
    -1
    123
    123
    -1
    -1
    
  3. 예제 3

    입력
    1
    empty
    
    예상 출력
    1
    
  4. 예제 4

    입력
    5
    pop
    pop
    pop
    pop
    pop
    
    예상 출력
    -1
    -1
    -1
    -1
    -1
    
  5. 예제 5

    입력
    9
    push 1
    push 100000
    top
    pop
    top
    size
    pop
    top
    size
    
    예상 출력
    100000
    100000
    1
    1
    1
    -1
    0
    
  6. 예제 6

    입력
    12
    size
    empty
    top
    pop
    push 7
    push 7
    size
    pop
    size
    pop
    size
    empty
    
    예상 출력
    0
    1
    -1
    -1
    2
    7
    1
    7
    0
    1