B - Almost Large Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MB

配点 : 100

問題文

大きさ N の非負整数の集合 S = \{S_1, S_2, \dots, S_N\} が与えられます。

変数 x があり、はじめ x = S_1 です。あなたは以下の操作を何度でも行うことができます。

  • y \in S1 つ選ぶ。y が以下の条件を満たすとき、xy を代入する。
    • 条件 : xy をそれぞれ三進数表記したときの 3^j の位の数字を X_jY_j とする。このとき、X_j \gt Y_j なる j の個数は 1 個以下である。

この操作を何回か行って x = S_N にできるかどうか判定してください。

制約

  • 2 \le N \le 2 \times 10^5
  • 0 \le S_i \lt 3^{12}
  • i \ne j ならば S_i \ne S_j
  • 入力はすべて整数

入力

入力は以下の形式で標準入力から与えられる。

N
S_1 S_2 \dots S_N

出力

x = S_N にできるなら Yes を、そうでないならば No を出力せよ。


入力例 1

2
21 14

出力例 1

Yes

以下のようにして x = 21 の状態から x = 14 にすることができます。

  • はじめ、x = 21 である。y = 14 を選んで操作を行う。
    • xy をそれぞれ三進数表記すると、(X_2, X_1, X_0) = (2, 1, 0),\ (Y_2, Y_1, Y_0) = (1, 1, 2) である。
    • X_j \gt Y_j なる jj = 21 個であるから、x14 を代入する。

入力例 2

2
12 1

出力例 2

No

x = 12y = 1 をそれぞれ三進数表記すると、(X_2, X_1, X_0) = (1, 1, 0),\ (Y_2, Y_1, Y_0) = (0, 0, 1) です。

X_j \gt Y_j なる jj = 1, 22 個であるので、x = 12 の状態から 1 を代入することはできません。


入力例 3

5
5 15 45 135 405

出力例 3

Yes