Problem2059--数列相等

2059: 数列相等

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 627  Solved: 342
[Status] [Submit] [Creator:]

Description

给定一个大小为 n 的整数数列 a1, a2, ……, an。你可以对这个数列进行任意次如下操作:

选择一个元素 ai(1 ≤ i ≤ n),并将其数值乘以 2 或乘以 3。

上述操作可以执行任意次,元素也可以任选。你的目的是通过若干次操作后让数列中的每个元素全部相等。问:能否实现?

Input

输入的第一行包含一个整数 n(1 ≤ n ≤ 100,000)。

输入的第二行包含 n 个整数 a1, a2, ……, an(1 ≤ ai ≤ 1,000,000,000),两两之间以一个空格分隔。

Output

如果能够经过若干次上述操作能够让数列中的每个元素都相等,输出 “YES”;否则,输出 “NO”。

Sample Input Copy

【样例输入1】
5
20 10 30 40 15
【样例输出1】
YES
【样例输入2】
5
10 30 15 50 60
【样例输出2】
NO

HINT

【样例解释】
样例1:
· 对 20 进行 1 次乘 2 操作及 1 次乘 3 操作,变为 20 × 2 × 3 = 120
· 对 10 进行 2 次乘 2 操作及 1 次乘 3 操作,变为 10 × 2 × 2 × 3 = 120
· 对 30 进行 2 次乘 2 操作,变为 30 × 2 × 2 = 120
· 对 40 进行 1 次乘 3 操作,变为 40 × 3 = 120
· 对 15 进行 3 次乘 2 操作,变为 15 × 2 × 2 × 2 = 120
这样所有的数都一样。
样例2:不存在合法的方案使所有数都相等。


【数据规模与约定】
· 对于 30% 的数据,n ≤ 100, 1 ≤ ai ≤ 1,000
· 对于 60% 的数据,n ≤ 1000, 1 ≤ ai ≤ 1,000,000
· 对于 100% 的数据,n ≤ 100,000, 1 ≤ ai ≤ 1,000,000,000

Source/Category