AT_arc182_d [ARC182D] Increment Decrement Again
Description
[problemUrl]: https://atcoder.jp/contests/arc182/tasks/arc182_d
どの隣接する $ 2 $ 要素も相異なる整数列を、**良い数列**と呼びます。
長さ $ N $ の良い数列 $ A=(A_1,A_2,\dots,A_N),B=(B_1,B_2,\dots,B_N) $ が与えられます。ただし、$ A,B $ の各要素はいずれも $ 0 $ 以上 $ M $ 未満です。
あなたは、$ A $ に対して $ 0 $ 回以上任意の回数、以下の操作を行うことができます。
- $ 1 $ 以上 $ N $ 以下の整数 $ i $ を選び、以下のどちらかの操作を行う。
- $ A_i\leftarrow\ (A_i+1)\bmod\ M $ とする。
- $ A_i\leftarrow\ (A_i-1)\bmod\ M $ とする。ただし、$ (-1)\bmod\ M=M-1 $ である。
ただし、$ A $ が良い数列でなくなるような操作をすることはできません。
$ A $ を $ B $ に一致させることが可能か判定し、可能ならば $ A $ を $ B $ に一致させるために必要な最小の操作回数を求めてください。
Input Format
N/A
Output Format
N/A
Explanation/Hint
### 制約
- $ 2\leq\ N\leq\ 2\times\ 10^5 $
- $ 2\leq\ M\leq\ 10^6 $
- $ 0\leq\ A_i,B_i\