AT_tupc2022_h Next Permutation

Description

$ (1,2,\ldots,N) $ の順列を以下では単に順列と呼びます。 順列 $ P $ に対して、順列 $ \mathrm{NextPermutation} (P) $ を次で定めます。 - $ P=(N,N-1,\ldots,2,1) $ のとき $ (1,2,\ldots,N-1,N) $ - そうでないとき、長さ $ N $ の順列全てを辞書順昇順に並べたときに $ P $ の次に来るもの $ 2 $ つの順列 $ P=(P_1, P_2, \ldots,P_N), Q=(Q_1, Q_2, \ldots, Q_N) $ が与えられます。 $ P $ が $ (1,2,\ldots, N-1,N) $ に一致するまで、次の操作を繰り返します。 - $ P $ を $ \mathrm{NextPermutation} (P) $ で、 $ Q $ を $ \mathrm{NextPermutation} (Q) $ で置き換える。 最終的な $ Q $ を求めてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ P_1 $ $ P_2 $ $ \ldots $ $ P_N $ $ Q_1 $ $ Q_2 $ $ \ldots $ $ Q_N $

Output Format

求める順列を $ Q'=(Q'_1,Q'_2,\ldots,Q'_N) $ として、 $ Q'_1,Q'_2,\ldots,Q'_N $ をこの順に空白区切りで一行に出力せよ。

Explanation/Hint

### Sample Explanation 1 操作によって $ P,Q $ は以下のように変化します。 - $ P $ : $ (2,3,1)\to (3,1,2)\to (3,2,1)\to (1,2,3) $ - $ Q $ : $ (3,2,1)\to (1,2,3)\to (1,3,2)\to (2,1,3) $ ### Sample Explanation 2 操作によって $ P,Q $ は以下のように変化します。 - $ P $ : $ (4,2,1,3)\to (4,2,3,1)\to (4,3,1,2)\to (4,3,2,1)\to(1,2,3,4) $ - $ Q $ : $ (2,1,3,4)\to(2,1,4,3)\to(2,3,1,4)\to(2,3,4,1)\to(2,4,1,3) $ ### Sample Explanation 3 一度も操作を行いません。 ### Constraints - $ 2\leq N\leq 2\times 10^5 $ - $ (P_1, P_2, \ldots,P_N),(Q_1, Q_2, \ldots, Q_N) $ は $ (1,2,\ldots,N) $ の順列 - 入力はすべて整数