AT_arc204_d [ARC204D] Favorite Interval
Description
整数 $ N, L, R $ が与えられます。
これらの整数について、以下が成り立ちます。
- $ 2 \leq N $
- $ 0\leq L < R \leq N $
- $ (L, R)\neq (0, N) $
長さ $ N $ の数列 $ A = (A_{0}, A_{1}, \dots , A_{N - 1}) $ を $ A = (0, 1, \dots, N - 1) $ と初期化します。
$ (R - L, R - L + 1, \dots , N - 1) $ の順列 $ P = (P_{0}, P_{1}, \dots, P_{N - (R - L) - 1}) $ をひとつ選び、 $ i = 0, 1, \dots N - (R - L) - 1 $ の順に以下の操作を行います。
- $ P_{i} $ を $ |A| $ で割ったあまりを $ a $ とし、 $ A_{a} $ を $ A $ から削除する(要素の削除後、数列 $ A $ の添え字は $ 0 $ から振り直されるものとする)
最終的に $ A = (L, L + 1, \dots , R - 1) $ となるような $ P $ が存在するか判定し、存在するならばそのような $ P $ をひとつ出力してください。
Input Format
入力は以下の形式で標準入力から与えられます。
> $ N $ $ L $ $ R $
Output Format
$ A = (L, L + 1, \dots , R - 1) $ となるような $ P $ が存在しない場合は `No` と出力してください。
存在する場合は以下の形式で答えを出力してください。
> Yes $ P_{0} $ $ P_{1} $ $ \cdots $ $ P_{N - (R - L) - 1} $
形式的には、 $ 1 $ 行目に `Yes` を出力し、 $ 2 $ 行目に $ P_{0}, P_{1}, \dots , P_{N - (R - L) - 1} $ を空白区切りで出力してください。
解が複数存在する場合はどれを出力しても正解とみなされます。
Explanation/Hint
### Sample Explanation 1
$ P = (2, 4, 5, 3) $ を選んだとき、 $ A = (0, 1, 2, 3, 4, 5) $ から以下のように $ 4 $ 回操作します。
- $ P_{0} = 2 $ を $ |A| = 6 $ で割ったあまりは $ 2 $ なので、 $ A_{2} = 2 $ を $ A $ から削除します。すると、 $ A = (A_{0}, A_{1}, A_{2}, A_{3}, A_{4}) = (0, 1, 3, 4, 5) $ となります。
- $ P_{1} = 4 $ を $ |A| = 5 $ で割ったあまりは $ 4 $ なので、 $ A_{4} = 5 $ を $ A $ から削除します。すると、 $ A = (A_{0}, A_{1}, A_{2}, A_{3}) = (0, 1, 3, 4) $ となります。
- $ P_{2} = 5 $ を $ |A| = 4 $ で割ったあまりは $ 1 $ なので、 $ A_{1} = 1 $ を $ A $ から削除します。すると、 $ A = (A_{0}, A_{1}, A_{2}) = (0, 3, 4) $ となります。
- $ P_{3} = 3 $ を $ |A| = 3 $ で割ったあまりは $ 0 $ なので、 $ A_{0} = 0 $ を $ A $ から削除します。すると、 $ A = (A_{0}, A_{1}) = (3, 4) $ となります。
よって、 $ P = (2, 4, 5, 3) $ とすることで目標を達成できます。また、 $ P = (5, 2, 4, 3) $ を出力しても良いです。
### Constraints
- $ 2\leq N\leq 2\times 10^{5} $
- $ 0\leq L < R\leq N $
- $ (L, R) \neq (0, N) $
- 入力は全て整数