题目描述
2 以上の整数 N に対し、1 ≤ x < y ≤ N を満たす整数の組 (x, y) は 2N(N − 1) 個あります。
これらを辞書順で小さい順に並べたもののうち L 番目、L+1 番目、…、R 番目のものをそれぞれ $ (x_1,\ y_1),\ \dots,\ (x_{R\ -\ L\ +\ 1},\ y_{R\ -\ L\ +\ 1}) $ とおきます。数列 A = (1, …, N) に対し、i = 1, …, R−L+1 の順に以下の操作を行います。
- Axi と Ayi を入れ替える
操作後の A を求めてください。
なお、(a, b) が (c, d) よりも辞書順で小さいとは、以下のいずれかが成り立つことをいいます。
- a < c
- a = c かつ b < d
输入格式
入力は以下の形式で標準入力から与えられる。
N L R
输出格式
操作後の A の各項を空白区切りで一行に出力せよ。
题目大意
题意
你有一个长度为 n 的序列 a,初始时,对于每一个 i(1≤i≤n),满足 ai=i。
然后你可以根据 n 构造出一个长度为 2n(n−1) 的二元组序列,包含满足 1≤l<r≤n 的所有二元组 (l,r)。并且将得到的序列以 l 为第一关键字,r 为第二关键字由小到大排序。
例如,当 n=4,时,二元组序列为:
(1,2),(1,3),(1,4),(2,3),(2,4),(3,4)
定义一个二元组 (l,r) 对应的操作为交换 al 和 ar。
给出一个 L 和一个 R,要求你求出在执行完第 L 个到第 R 个二元组所对应的操作后的序列。
样例解释
n=5 时,第 3 个到第 6 个二元组为:
(1,4),(1,5),(2,3),(2,4)
所以执行完操作后原序列变为:
1,2,3,4,5⟶5,1,2,3,4
5 3 6
5 1 2 3 4
10 12 36
1 10 9 8 7 4 3 2 5 6
提示
制約
- 2 ≤ N ≤ 2 × 105
- 1 ≤ L ≤ R ≤ 2N(N−1)
- 入力は全て整数
Sample Explanation 1
1 ≤ x < y ≤ N を満たす整数の組を辞書順で小さい順に並べたもののうち 3, 4, 5, 6 番目のものはそれぞれ (1, 4), (1, 5), (2, 3), (2, 4) です。 これらについて順に操作を行うと、A は次のように変化します。 $ (1,\ 2,\ 3,\ 4,\ 5)\ \rightarrow\ (4,\ 2,\ 3,\ 1,\ 5)\ \rightarrow\ (5,\ 2,\ 3,\ 1,\ 4)\ \rightarrow\ (5,\ 3,\ 2,\ 1,\ 4)\ \rightarrow\ (5,\ 1,\ 2,\ 3,\ 4) $