AT_past202109_j 数列の反転
Description
[problemUrl]: https://atcoder.jp/contests/past202109-open/tasks/past202109_j
長さ $ 2N $ の数列 $ A\ =\ (1,2,\ \ldots\ ,2N) $ があります。$ Q $ 個のクエリを処理してください。$ i $ 番目のクエリでは、整数 $ t_i,\ k_i $ が与えられます。
- $ t_i\ =\ 1 $ のとき : 数列 $ A $ の左から $ k_i $ 番目の要素の値を出力する。
- $ t_i\ =\ 2 $ のとき : 数列 $ A $ の中央の $ 2k_i $ 個の要素の順序を反転させる。つまり、左から $ N-k_i+1 $ 番目の要素から左から $ N+k_i $ 番目の要素までの順序を反転させる。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ Q $ $ t_1 $ $ k_1 $ $ t_2 $ $ k_2 $ $ \vdots $ $ t_Q $ $ k_Q $
Output Format
$ t_i=1 $ をみたす $ i $ について、それぞれ数列 $ A $ の左から $ k_i $ 番目の要素の値を改行区切りで出力せよ。
Explanation/Hint
### 注意
この問題に対する言及は、2021/10/02 18:00 JST まで禁止されています。言及がなされた場合、賠償が請求される可能性があります。 試験後に総合得点や認定級を公表するのは構いませんが、どの問題が解けたかなどの情報は発信しないようにお願いします。
### 制約
- $ 1\ \leq\ N\ \leq\ 2\ \times\ 10^5 $
- $ 1\ \leq\ Q\ \leq\ 2\ \times\ 10^5 $
- $ 1\ \leq\ t_i\ \leq\ 2 $
- $ t_i=1 $ なる $ i $ が $ 1 $ つ以上存在する。
- $ t_i=1 $ ならば $ 1\ \leq\ k_i\ \leq\ 2N $
- $ t_i=2 $ ならば $ 1\ \leq\ k_i\ \leq\ N $
- 入力は全て整数である。
### Sample Explanation 1
はじめ数列 $ A $ は $ (1,2,3,4,5,6) $ です。 $ 1 $ つ目のクエリでは、中央の $ 4 $ 要素を反転させ、数列 $ A $ は $ (1,5,4,3,2,6) $ となります。 $ 2 $ つ目のクエリでは、左から $ 4 $ 番目の要素は $ 3 $ なので、$ 3 $ と出力してください。