1부터 n까지의 수열에서 각 요청이 지정한 정수를 맨 앞으로 옮기고 나머지 순서는 유지할 때, 모든 요청을 처리한 뒤의 최종 수열을 출력한다.
1부터 nnn까지의 정수가 차례로 놓인 수열 (1,2,3,…,n)(1, 2, 3, \ldots, n)(1,2,3,…,n)이 있다. 이어서 요청이 여러 개 주어진다. 각 요청은 수열에 들어 있는 정수 하나를 지정하며, 지정된 정수를 수열의 맨 앞으로 옮긴다. 나머지 원소의 순서는 그대로 둔다. 모든 요청을 주어진 순서대로 처리한 뒤 수열에 놓인 원소의 순서를 구하여라.
입력은 다음 형태의 테스트 케이스 하나로 이루어진다.
n m e1 . . . em
nnn은 수열의 길이다 (1≤n≤2000001 \le n \le 2000001≤n≤200000). mmm은 요청의 개수다 (1≤m≤1000001 \le m \le 1000001≤m≤100000). 이어지는 mmm개의 줄에 요청 e1,…,eme_1, \ldots, e_me1,…,em이 한 줄에 하나씩 주어진다. 각 요청 eie_iei (1≤i≤m1 \le i \le m1≤i≤m)는 111 이상 nnn 이하의 정수이며, 옮길 원소를 나타낸다. 요청이 가리키는 값은 수열에서의 위치가 아니라 옮길 정수 자체다.
모든 요청을 처리한 뒤의 수열을 출력한다. 원소를 수열에 놓인 순서대로 한 줄에 하나씩 출력한다.
nnn이 555이고 요청이 차례로 444, 222, 555인 경우를 보자. 처음 수열은 (1,2,3,4,5)(1, 2, 3, 4, 5)(1,2,3,4,5)다. 첫 요청은 정수 444를 맨 앞으로 옮기므로 수열은 (4,1,2,3,5)(4, 1, 2, 3, 5)(4,1,2,3,5)가 된다. 다음 요청으로 222를 맨 앞으로 옮기면 (2,4,1,3,5)(2, 4, 1, 3, 5)(2,4,1,3,5)가 되고, 마지막으로 555를 옮기면 (5,2,4,1,3)(5, 2, 4, 1, 3)(5,2,4,1,3)이 된다.