정수 큐 시뮬레이터 2
선입선출(FIFO) 구조의 정수형 큐를 직접 구현하고, 입력으로 주어지는 연산 시퀀스를 처리하라.
- push X: 정수 X를 큐의 후단에 삽입한다.
- pop: 큐의 전단 원소를 꺼내어 출력한다. 큐가 비어 있으면 -1을 출력한다.
- size: 큐에 존재하는 원소의 총 개수를 출력한다.
- empty: 큐가 비어 있으면 1, 아니면 0을 출력한다.
- front: 큐의 전단 원소를 제거 없이 출력한다. 큐가 비어 있으면 -1을 출력한다.
- back: 큐의 후단 원소를 제거 없이 출력한다. 큐가 비어 있으면 -1을 출력한다.
입력 설명
첫째 줄에 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다.
둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다.
주어지는 정수는 1 이상 100,000 이하이다.
정의되지 않은 명령은 주어지지 않는다.
출력 설명
출력해야하는 명령이 주어질 때마다, 한 줄에 하나씩 출력한다.
예제 입력
15
push 1
push 2
front
back
size
empty
pop
pop
pop
size
empty
pop
push 3
empty
front
예제 출력
1
2
2
0
1
2
-1
0
1
-1
0
3