#ddcc2017finalb. [ddcc2017_final_b]GCDロボット

[ddcc2017_final_b]GCDロボット

问题描述

高桥君有 NN 台机器人。每个机器人都有一个编号 1,2,...,N1, 2, ..., N

每个机器人上都写着一个正整数,编号为 ii 的机器人上写着 aia_i

当给机器人传递正整数 X,YX, Y 时,如果 gcd(X,ai)=gcd(Y,ai){\rm gcd}(X, a_i) = {\rm gcd}(Y, a_i),则称机器人编号为 ii 的两台机器人是“相似的”,否则称它们不相似。在这个问题中,gcd(X,Y){\rm gcd}(X, Y) 表示 XXYY 的最大公约数。

对于正整数 X,YX, Y,如果所有 NN 台机器人都相似,则称 XXYY 是“像双胞胎”。

给定正整数 ZZ,请找出与它像双胞胎的最小的数。

约束条件

  • 1N100,0001 \leq N \leq 100,000
  • 1Z,ai10181 \leq Z, a_i \leq 10^{18}

输入

从标准输入中按以下格式输入。

NN ZZ a1a_1 a2a_2 ... aNa_N

输出

输出找到的答案。


示例 1

3 12
2 6 9

输出示例 1

6

因为:

  • gcd(6,2)=gcd(12,2)=2{\rm gcd}(6, 2) = {\rm gcd}(12, 2) = 2
  • gcd(6,6)=gcd(12,6)=6{\rm gcd}(6, 6) = {\rm gcd}(12, 6) = 6
  • gcd(6,9)=gcd(12,9)=3{\rm gcd}(6, 9) = {\rm gcd}(12, 9) = 3

所以 661212 是像双胞胎,且没有比 66 更小的数字也是像双胞胎,因此答案是 66


示例 2

10 1000000007
1 2 3 4 5 6 7 8 9 10

输出示例 2

1

示例 3

2 1000000000000000000
1000000000000000000 1000000000000000000

输出示例 3

1000000000000000000