配点 : 600 点
問題文
2 以上の整数 N に対し、1≤x<y≤N を満たす整数の組 (x,y) は 2N(N−1) 個あります。
これらを辞書順で小さい順に並べたもののうち L 番目、L+1 番目、…、R 番目のものをそれぞれ (x1,y1),…,(xR−L+1,yR−L+1) とおきます。数列 A=(1,…,N) に対し、i=1,…,R−L+1 の順に以下の操作を行います。
- Axi と Ayi を入れ替える
操作後の A を求めてください。
なお、(a,b) が (c,d) よりも辞書順で小さいとは、以下のいずれかが成り立つことをいいます。
- a<c
- a=c かつ b<d
制約
- 2≤N≤2×105
- 1≤L≤R≤2N(N−1)
- 入力は全て整数
入力
入力は以下の形式で標準入力から与えられる。
N L R
出力
操作後の A の各項を空白区切りで一行に出力せよ。
5 3 6
5 1 2 3 4
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)$
10 12 36
1 10 9 8 7 4 3 2 5 6