[ARC122E] Increasing LCMs
题意翻译
给定长度为 $N$ 的正整数序列 $\{A_i\}$,满足 $A_i$ 单调升。
问是否能将 $\{A_i\}$ 重排为序列 $\{x_i\}$,满足:
令 $y_i = \operatorname{LCM}(x_1, \dots, x_i)$,$\forall 1\le i<N, y_i<y_{i+1}$(即 $y_i$ 单调升)。
题目描述
[problemUrl]: https://atcoder.jp/contests/arc122/tasks/arc122_e
長さ $ N $ の正整数列 $ A_1,A_2,\cdots,A_N $ があります. あなたは,これらの整数を並び替えることで,正整数列 $ x_1,x_2,\cdots,x_N $ を作ろうとしています. この時,$ x $ は以下の条件を満たす必要があります.
- $ y_i=\operatorname{LCM}(x_1,x_2,\cdots,x_i) $ と定義する.ここで,$ \operatorname{LCM} $ は与えられた整数たちの最小公倍数を返す関数である.このとき,$ y $ は狭義単調増加である.つまり,$ y_1\ <\ y_2\ <\ \cdots\ <\ y_N $ が成り立つ.
条件を満たすような $ x $ が存在するか判定し,存在するなら一つ例を示してください.
输入输出格式
输入格式
入力は以下の形式で標準入力から与えられる.
> $ N $ $ A_1 $ $ A_2 $ $ \cdots $ $ A_N $
输出格式
条件を満たすような $ x $ が存在する場合,以下の形式で答えを出力せよ.
> Yes $ x_1 $ $ x_2 $ $ \cdots $ $ x_N $
存在しない場合,`No` と出力せよ.
输入输出样例
输入样例 #1
3
3 4 6
输出样例 #1
Yes
3 6 4
输入样例 #2
3
2 3 6
输出样例 #2
No
输入样例 #3
10
922513 346046618969 3247317977078471 4638516664311857 18332844097865861 81706734998806133 116282391418772039 134115264093375553 156087536381939527 255595307440611247
输出样例 #3
Yes
922513 346046618969 116282391418772039 81706734998806133 255595307440611247 156087536381939527 134115264093375553 18332844097865861 3247317977078471 4638516664311857
说明
### 制約
- $ 1\ \leq\ N\ \leq\ 100 $
- $ 2\ \leq\ A_1\ <\ A_2\ \cdots\ <\ A_N\ \leq\ 10^{18} $
- 入力される値はすべて整数である
### Sample Explanation 1
$ x=(3,6,4) $ のとき, - $ y_1=\operatorname{LCM}(3)=3 $ - $ y_2=\operatorname{LCM}(3,6)=6 $ - $ y_3=\operatorname{LCM}(3,6,4)=12 $ となり,$ y_1\ <\ y_2\ <\ y_3 $ を満たします.
### Sample Explanation 2
どのように $ A $ を並び替えても条件を満たすことができません.