Official
E - Increasing LCMs Editorial by maroonrk_admin
\(A_i\) が \(x\) の最後尾に来ることができる必要十分条件は, \(\operatorname{GCD}(\operatorname{LCM}_{j \neq i}(A_j),A_i) < A_i\) であることです. これは,\(\operatorname{LCM}_{j \neq i}(\operatorname{GCD}(A_j,A_i)) < A_i\) と書き直せます.
このような \(A_i\) が存在しない場合,答えは No
です.
逆に存在する場合は,そのような \(A_i\) の中から任意に一つ選んで,それを \(x\) の最後尾の要素にして良いです.
これは,解が存在する場合,任意の解をとり,今選んだ \(A_i\) を最後尾に移動させても解として成立することからわかります.
よって,\(x\) を最後尾から一つずつ決めていくことができます.
計算量は愚直に計算した場合でも \(O(N^3\log (\max(A_i)))\) であり,十分高速です.
posted:
last update: