#730. 交替的排序

交替的排序

Cannot parse: (0 , import_utils.normalizeSubtasks) is not a function or its return value is not iterable

Background

Special for beginners, ^_^

Description

有一个长为 nn 的序列,在开始时,序列中的第 ii 个数 aia_i 的值为 ii。现在给出 qq 次操作,每次操作会给定三个参数 ti,xi,yit_i,x_i,y_i,其意义如下:

  • tit_i11 时:yi=0y_i=0,将 axia_{x_i}axi+1a_{x_i+1} 对调;
  • tit_i22 时:将 [xi,yi][x_i,y_i] 区间内的数按升序排序。

请在所有操作完成后输出序列 aa

Format

Input

输入共 (q+1)(q+1) 行。第一行输入两个正整数 nnqq,接下来 qq 行按照 i=1,2,...,qi=1,2,...,q 的顺序输入 ti,xit_i,x_iyiy_i

Output

在所有操作完成后输出一行 nn 个正整数,即 aa 数列的元素。

Samples

5 3
1 1 0
1 2 0
2 2 4
2 1 3 4 5
10 15
1 3 0
1 5 0
1 4 0
1 2 0
1 3 0
2 4 7
1 5 0
1 7 0
1 9 0
1 8 0
2 3 5
1 8 0
1 9 0
1 5 0
1 2 0
1 2 4 5 3 6 8 7 9 10

Limitation

  • 2n2×1052 \le n \le 2 \times 10 ^51q2×1051 \le q \le 2 \times 10^5
  • tit_i 必为 1122
  • tit_i11 时,1xin1\le x_i \le n
  • tit_i22 时,1xi<yin1\le x_i \lt y_i \le n
  • 输入均为整数。