버퍼 시뮬레이션
크기가 정해진 버퍼가 있다.
버퍼는 먼저 들어온 값이 먼저 나가는 큐처럼 동작한다.
버퍼에 빈 칸이 있을 때만 새 값을 넣을 수 있고, 버퍼가 가득 차 있으면 새 값은 들어가지 못한다.
명령을 모두 처리한 뒤 버퍼에 남아 있는 값을 출력하라.
명령은 다음 중 하나이다.
push x: 버퍼에 빈 칸이 있으면 \(x\)를 뒤에 넣는다. 버퍼가 가득 차 있으면 아무 일도 하지 않는다.pop: 버퍼가 비어 있지 않으면 가장 앞 값을 제거한다. 버퍼가 비어 있으면 아무 일도 하지 않는다.
입력
첫째 줄에 버퍼의 크기 \(k\)와 명령의 수 \(n\)이 공백으로 구분되어 주어진다.
둘째 줄부터 \(n\)개의 줄에 명령이 하나씩 주어진다.
\((1 \le k, n \le 100000)\)
push로 들어오는 정수는 \(-10^9\) 이상 \(10^9\) 이하이다.
출력
버퍼에 남아 있는 값을 앞에서부터 공백으로 구분하여 출력한다.
남아 있는 값이 없다면 empty를 출력한다.
예제 입력
3 5
push 1
push 2
pop
push 3
push 4
예제 출력
2 3 4
코멘트